Index: /branches/GeneralizedQAP/HeuristicLab 3.3 Services.sln
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab 3.3 Services.sln	(revision 6779)
+++ /branches/GeneralizedQAP/HeuristicLab 3.3 Services.sln	(revision 6780)
@@ -17,5 +17,7 @@
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Services.Deployment-3.3.Tests", "HeuristicLab.Services.Deployment\3.3\Tests\HeuristicLab.Services.Deployment-3.3.Tests.csproj", "{421D9CCA-5A48-4813-AB9C-ED7025F9CC35}"
 EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Services.ProblemInstances-3.3", "HeuristicLab.Services.ProblemInstances\HeuristicLab.Services.ProblemInstances-3.3.csproj", "{D4E9242F-DAA4-4A15-8DE7-91CECFFFD898}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Services.Hello-3.3", "HeuristicLab.Services.Hello\3.3\HeuristicLab.Services.Hello-3.3.csproj", "{2C1C8598-D001-4414-BD0F-531FA259A82C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "HeuristicLab.Services.ProblemInstances-3.3", "HeuristicLab.Services.ProblemInstances\3.3\HeuristicLab.Services.ProblemInstances-3.3.csproj", "{D4E9242F-DAA4-4A15-8DE7-91CECFFFD898}"
 EndProject
 Global
@@ -82,4 +84,16 @@
 		{421D9CCA-5A48-4813-AB9C-ED7025F9CC35}.Release|x86.ActiveCfg = Release|x86
 		{421D9CCA-5A48-4813-AB9C-ED7025F9CC35}.Release|x86.Build.0 = Release|x86
+		{2C1C8598-D001-4414-BD0F-531FA259A82C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{2C1C8598-D001-4414-BD0F-531FA259A82C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{2C1C8598-D001-4414-BD0F-531FA259A82C}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
+		{2C1C8598-D001-4414-BD0F-531FA259A82C}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
+		{2C1C8598-D001-4414-BD0F-531FA259A82C}.Debug|x64.ActiveCfg = Debug|Any CPU
+		{2C1C8598-D001-4414-BD0F-531FA259A82C}.Debug|x86.ActiveCfg = Debug|Any CPU
+		{2C1C8598-D001-4414-BD0F-531FA259A82C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{2C1C8598-D001-4414-BD0F-531FA259A82C}.Release|Any CPU.Build.0 = Release|Any CPU
+		{2C1C8598-D001-4414-BD0F-531FA259A82C}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
+		{2C1C8598-D001-4414-BD0F-531FA259A82C}.Release|Mixed Platforms.Build.0 = Release|Any CPU
+		{2C1C8598-D001-4414-BD0F-531FA259A82C}.Release|x64.ActiveCfg = Release|Any CPU
+		{2C1C8598-D001-4414-BD0F-531FA259A82C}.Release|x86.ActiveCfg = Release|Any CPU
 		{D4E9242F-DAA4-4A15-8DE7-91CECFFFD898}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
 		{D4E9242F-DAA4-4A15-8DE7-91CECFFFD898}.Debug|Any CPU.Build.0 = Debug|Any CPU
Index: /branches/GeneralizedQAP/HeuristicLab.ExtLibs/HeuristicLab.ProtobufCS/0.9.1/ProtobufCS/src/ProtocolBuffers/ProtocolBuffers.csproj
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.ExtLibs/HeuristicLab.ProtobufCS/0.9.1/ProtobufCS/src/ProtocolBuffers/ProtocolBuffers.csproj	(revision 6779)
+++ /branches/GeneralizedQAP/HeuristicLab.ExtLibs/HeuristicLab.ProtobufCS/0.9.1/ProtobufCS/src/ProtocolBuffers/ProtocolBuffers.csproj	(revision 6780)
@@ -241,5 +241,4 @@
   </ItemGroup>
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" Condition=" '$(Configuration)' != 'Silverlight2' " />
-  <Import Project="$(MSBuildExtensionsPath)\Microsoft\Silverlight\v2.0\Microsoft.Silverlight.CSharp.targets" Condition=" '$(Configuration)' == 'Silverlight2' " />
   <PropertyGroup>
     <PostBuildEvent>copy "$(TargetPath)" "$(SolutionDir)"
Index: /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/HelloService.svc
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/HelloService.svc	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/HelloService.svc	(revision 6780)
@@ -0,0 +1,1 @@
+﻿<%@ ServiceHost Language="C#" Debug="true" Service="HeuristicLab.Services.Hello.HelloService" CodeBehind="HelloService.svc.cs" %>
Index: /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/HelloService.svc.cs
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/HelloService.svc.cs	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/HelloService.svc.cs	(revision 6780)
@@ -0,0 +1,28 @@
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab 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.
+ *
+ * HeuristicLab 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 HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+namespace HeuristicLab.Services.Hello {
+  public class HelloService : IHelloService {
+    public string SayHello() {
+      return "Hello";
+    }
+  }
+}
Index: /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/HeuristicLab.Services.Hello-3.3.csproj
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/HeuristicLab.Services.Hello-3.3.csproj	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/HeuristicLab.Services.Hello-3.3.csproj	(revision 6780)
@@ -0,0 +1,103 @@
+﻿<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProductVersion>
+    </ProductVersion>
+    <SchemaVersion>2.0</SchemaVersion>
+    <ProjectGuid>{2C1C8598-D001-4414-BD0F-531FA259A82C}</ProjectGuid>
+    <ProjectTypeGuids>{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
+    <OutputType>Library</OutputType>
+    <AppDesignerFolder>Properties</AppDesignerFolder>
+    <RootNamespace>HeuristicLab.Services.Hello</RootNamespace>
+    <AssemblyName>HeuristicLab.Services.Hello-3.3</AssemblyName>
+    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="Microsoft.CSharp" />
+    <Reference Include="System.Web.DynamicData" />
+    <Reference Include="System.Web.Entity" />
+    <Reference Include="System.Web.ApplicationServices" />
+    <Reference Include="System" />
+    <Reference Include="System.Configuration" />
+    <Reference Include="System.Core" />
+    <Reference Include="System.Data" />
+    <Reference Include="System.Drawing" />
+    <Reference Include="System.EnterpriseServices" />
+    <Reference Include="System.Runtime.Serialization" />
+    <Reference Include="System.ServiceModel" />
+    <Reference Include="System.ServiceModel.Web" />
+    <Reference Include="System.Web" />
+    <Reference Include="System.Web.Extensions" />
+    <Reference Include="System.Web.Services" />
+    <Reference Include="System.Xml" />
+    <Reference Include="System.Xml.Linq" />
+  </ItemGroup>
+  <ItemGroup>
+    <Content Include="HelloService.svc" />
+    <Content Include="Web.config" />
+    <Content Include="Web.Debug.config">
+      <DependentUpon>Web.config</DependentUpon>
+    </Content>
+    <Content Include="Web.Release.config">
+      <DependentUpon>Web.config</DependentUpon>
+    </Content>
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="HelloService.svc.cs">
+      <DependentUpon>HelloService.svc</DependentUpon>
+    </Compile>
+    <Compile Include="IHelloService.cs" />
+    <Compile Include="Properties\AssemblyInfo.cs" />
+  </ItemGroup>
+  <ItemGroup>
+    <Folder Include="App_Data\" />
+  </ItemGroup>
+  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />
+  <ProjectExtensions>
+    <VisualStudio>
+      <FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
+        <WebProjectProperties>
+          <UseIIS>False</UseIIS>
+          <AutoAssignPort>True</AutoAssignPort>
+          <DevelopmentServerPort>12595</DevelopmentServerPort>
+          <DevelopmentServerVPath>/</DevelopmentServerVPath>
+          <IISUrl>
+          </IISUrl>
+          <NTLMAuthentication>False</NTLMAuthentication>
+          <UseCustomServer>False</UseCustomServer>
+          <CustomServerUrl>
+          </CustomServerUrl>
+          <SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
+          <EnableWcfTestClientForSVCDefaultValue>True</EnableWcfTestClientForSVCDefaultValue>
+        </WebProjectProperties>
+      </FlavorProperties>
+    </VisualStudio>
+  </ProjectExtensions>
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
+       Other similar extension points exist, see Microsoft.Common.targets.
+  <Target Name="BeforeBuild">
+  </Target>
+  <Target Name="AfterBuild">
+  </Target>
+  -->
+</Project>
Index: /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/HeuristicLab.Services.Hello.Publish.xml
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/HeuristicLab.Services.Hello.Publish.xml	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/HeuristicLab.Services.Hello.Publish.xml	(revision 6780)
@@ -0,0 +1,4 @@
+﻿<?xml version="1.0" encoding="utf-8"?>
+<publishData>
+  <publishProfile publishUrl="services.heuristiclab.com" deleteExistingFiles="False" ftpAnonymousLogin="False" ftpPassiveMode="True" msdeploySite="services.heuristiclab.com/Hello" msdeploySiteID="" msdeployRemoteSitePhysicalPath="" msdeployAllowUntrustedCertificate="True" msdeploySkipExtraFilesOnServer="True" msdeployMarkAsApp="False" profileName="Publish to SERVICES" publishMethod="MSDeploy" replaceMatchingFiles="True" userName="" savePWD="False" userPWD="" SelectedForPublish="True" />
+</publishData>
Index: /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/IHelloService.cs
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/IHelloService.cs	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/IHelloService.cs	(revision 6780)
@@ -0,0 +1,30 @@
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab 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.
+ *
+ * HeuristicLab 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 HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+using System.ServiceModel;
+
+namespace HeuristicLab.Services.Hello {
+  [ServiceContract]
+  public interface IHelloService {
+    [OperationContract]
+    string SayHello();
+  }
+}
Index: /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/Properties/AssemblyInfo.cs
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/Properties/AssemblyInfo.cs	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/Properties/AssemblyInfo.cs	(revision 6780)
@@ -0,0 +1,35 @@
+﻿using System.Reflection;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following 
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("HeuristicLab.Services.Hello")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("HEAL")]
+[assembly: AssemblyProduct("HeuristicLab")]
+[assembly: AssemblyCopyright("(c) HEAL 2002-2011")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible 
+// to COM components.  If you need to access a type in this assembly from 
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("49e1b397-2fc6-48f2-be58-c65758843301")]
+
+// Version information for an assembly consists of the following four values:
+//
+//      Major Version
+//      Minor Version 
+//      Build Number
+//      Revision
+//
+// You can specify all the values or you can default the Revision and Build Numbers 
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("3.3.0.0")]
+[assembly: AssemblyFileVersion("3.3.0.0")]
Index: /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/Web.Debug.config
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/Web.Debug.config	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/Web.Debug.config	(revision 6780)
@@ -0,0 +1,7 @@
+﻿<?xml version="1.0"?>
+
+<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
+
+<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
+
+</configuration>
Index: /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/Web.Release.config
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/Web.Release.config	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/Web.Release.config	(revision 6780)
@@ -0,0 +1,11 @@
+﻿<?xml version="1.0"?>
+
+<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
+
+<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
+
+  <system.web>
+    <compilation xdt:Transform="RemoveAttributes(debug)" />
+  </system.web>
+
+</configuration>
Index: /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/Web.config
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/Web.config	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.Hello/3.3/Web.config	(revision 6780)
@@ -0,0 +1,24 @@
+﻿<?xml version="1.0"?>
+<configuration>
+
+  <system.web>
+    <compilation debug="true" targetFramework="4.0" />
+  </system.web>
+  <system.serviceModel>
+    <behaviors>
+      <serviceBehaviors>
+        <behavior>
+          <!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment -->
+          <serviceMetadata httpGetEnabled="true"/>
+          <!-- To receive exception details in faults for debugging purposes, set the value below to true.  Set to false before deployment to avoid disclosing exception information -->
+          <serviceDebug includeExceptionDetailInFaults="false"/>
+        </behavior>
+      </serviceBehaviors>
+    </behaviors>
+    <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
+  </system.serviceModel>
+ <system.webServer>
+    <modules runAllManagedModulesForAllRequests="true"/>
+  </system.webServer>
+  
+</configuration>
Index: anches/GeneralizedQAP/HeuristicLab.Services.Hello/HelloService.svc
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.Hello/HelloService.svc	(revision 6779)
+++ 	(revision )
@@ -1,1 +1,0 @@
-﻿<%@ ServiceHost Language="C#" Debug="true" Service="HeuristicLab.Services.Hello.HelloService" CodeBehind="HelloService.svc.cs" %>
Index: anches/GeneralizedQAP/HeuristicLab.Services.Hello/HelloService.svc.cs
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.Hello/HelloService.svc.cs	(revision 6779)
+++ 	(revision )
@@ -1,28 +1,0 @@
-﻿#region License Information
-/* HeuristicLab
- * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
- *
- * This file is part of HeuristicLab.
- *
- * HeuristicLab 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.
- *
- * HeuristicLab 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 HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
- */
-#endregion
-
-namespace HeuristicLab.Services.Hello {
-  public class HelloService : IHelloService {
-    public string SayHello() {
-      return "Hello";
-    }
-  }
-}
Index: anches/GeneralizedQAP/HeuristicLab.Services.Hello/HeuristicLab.Services.Hello.Publish.xml
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.Hello/HeuristicLab.Services.Hello.Publish.xml	(revision 6779)
+++ 	(revision )
@@ -1,4 +1,0 @@
-﻿<?xml version="1.0" encoding="utf-8"?>
-<publishData>
-  <publishProfile publishUrl="services.heuristiclab.com" deleteExistingFiles="False" ftpAnonymousLogin="False" ftpPassiveMode="True" msdeploySite="services.heuristiclab.com/Hello" msdeploySiteID="" msdeployRemoteSitePhysicalPath="" msdeployAllowUntrustedCertificate="True" msdeploySkipExtraFilesOnServer="True" msdeployMarkAsApp="False" profileName="Publish to HeuristicLab.Services" publishMethod="MSDeploy" replaceMatchingFiles="True" userName="" savePWD="False" userPWD="" SelectedForPublish="True" />
-</publishData>
Index: anches/GeneralizedQAP/HeuristicLab.Services.Hello/HeuristicLab.Services.Hello.csproj
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.Hello/HeuristicLab.Services.Hello.csproj	(revision 6779)
+++ 	(revision )
@@ -1,103 +1,0 @@
-﻿<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>
-    </ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{2C1C8598-D001-4414-BD0F-531FA259A82C}</ProjectGuid>
-    <ProjectTypeGuids>{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>HeuristicLab.Services.Hello</RootNamespace>
-    <AssemblyName>HeuristicLab.Services.Hello</AssemblyName>
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\</OutputPath>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\</OutputPath>
-    <DefineConstants>TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="Microsoft.CSharp" />
-    <Reference Include="System.Web.DynamicData" />
-    <Reference Include="System.Web.Entity" />
-    <Reference Include="System.Web.ApplicationServices" />
-    <Reference Include="System" />
-    <Reference Include="System.Configuration" />
-    <Reference Include="System.Core" />
-    <Reference Include="System.Data" />
-    <Reference Include="System.Drawing" />
-    <Reference Include="System.EnterpriseServices" />
-    <Reference Include="System.Runtime.Serialization" />
-    <Reference Include="System.ServiceModel" />
-    <Reference Include="System.ServiceModel.Web" />
-    <Reference Include="System.Web" />
-    <Reference Include="System.Web.Extensions" />
-    <Reference Include="System.Web.Services" />
-    <Reference Include="System.Xml" />
-    <Reference Include="System.Xml.Linq" />
-  </ItemGroup>
-  <ItemGroup>
-    <Content Include="HelloService.svc" />
-    <Content Include="Web.config" />
-    <Content Include="Web.Debug.config">
-      <DependentUpon>Web.config</DependentUpon>
-    </Content>
-    <Content Include="Web.Release.config">
-      <DependentUpon>Web.config</DependentUpon>
-    </Content>
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="HelloService.svc.cs">
-      <DependentUpon>HelloService.svc</DependentUpon>
-    </Compile>
-    <Compile Include="IHelloService.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-  </ItemGroup>
-  <ItemGroup>
-    <Folder Include="App_Data\" />
-  </ItemGroup>
-  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
-  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />
-  <ProjectExtensions>
-    <VisualStudio>
-      <FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
-        <WebProjectProperties>
-          <UseIIS>False</UseIIS>
-          <AutoAssignPort>True</AutoAssignPort>
-          <DevelopmentServerPort>12595</DevelopmentServerPort>
-          <DevelopmentServerVPath>/</DevelopmentServerVPath>
-          <IISUrl>
-          </IISUrl>
-          <NTLMAuthentication>False</NTLMAuthentication>
-          <UseCustomServer>False</UseCustomServer>
-          <CustomServerUrl>
-          </CustomServerUrl>
-          <SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
-          <EnableWcfTestClientForSVCDefaultValue>True</EnableWcfTestClientForSVCDefaultValue>
-        </WebProjectProperties>
-      </FlavorProperties>
-    </VisualStudio>
-  </ProjectExtensions>
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
-       Other similar extension points exist, see Microsoft.Common.targets.
-  <Target Name="BeforeBuild">
-  </Target>
-  <Target Name="AfterBuild">
-  </Target>
-  -->
-</Project>
Index: anches/GeneralizedQAP/HeuristicLab.Services.Hello/IHelloService.cs
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.Hello/IHelloService.cs	(revision 6779)
+++ 	(revision )
@@ -1,30 +1,0 @@
-﻿#region License Information
-/* HeuristicLab
- * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
- *
- * This file is part of HeuristicLab.
- *
- * HeuristicLab 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.
- *
- * HeuristicLab 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 HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
- */
-#endregion
-
-using System.ServiceModel;
-
-namespace HeuristicLab.Services.Hello {
-  [ServiceContract]
-  public interface IHelloService {
-    [OperationContract]
-    string SayHello();
-  }
-}
Index: anches/GeneralizedQAP/HeuristicLab.Services.Hello/Web.Debug.config
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.Hello/Web.Debug.config	(revision 6779)
+++ 	(revision )
@@ -1,7 +1,0 @@
-﻿<?xml version="1.0"?>
-
-<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
-
-<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
-
-</configuration>
Index: anches/GeneralizedQAP/HeuristicLab.Services.Hello/Web.Release.config
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.Hello/Web.Release.config	(revision 6779)
+++ 	(revision )
@@ -1,11 +1,0 @@
-﻿<?xml version="1.0"?>
-
-<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
-
-<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
-
-  <system.web>
-    <compilation xdt:Transform="RemoveAttributes(debug)" />
-  </system.web>
-
-</configuration>
Index: anches/GeneralizedQAP/HeuristicLab.Services.Hello/Web.config
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.Hello/Web.config	(revision 6779)
+++ 	(revision )
@@ -1,24 +1,0 @@
-﻿<?xml version="1.0"?>
-<configuration>
-
-  <system.web>
-    <compilation debug="true" targetFramework="4.0" />
-  </system.web>
-  <system.serviceModel>
-    <behaviors>
-      <serviceBehaviors>
-        <behavior>
-          <!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment -->
-          <serviceMetadata httpGetEnabled="true"/>
-          <!-- To receive exception details in faults for debugging purposes, set the value below to true.  Set to false before deployment to avoid disclosing exception information -->
-          <serviceDebug includeExceptionDetailInFaults="false"/>
-        </behavior>
-      </serviceBehaviors>
-    </behaviors>
-    <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
-  </system.serviceModel>
- <system.webServer>
-    <modules runAllManagedModulesForAllRequests="true"/>
-  </system.webServer>
-  
-</configuration>
Index: /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/Auxiliary.cs
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/Auxiliary.cs	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/Auxiliary.cs	(revision 6780)
@@ -0,0 +1,46 @@
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab 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.
+ *
+ * HeuristicLab 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 HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+using System;
+using System.Text;
+
+namespace HeuristicLab.Services.ProblemInstances {
+  public class Auxiliary {
+    public static string GetSHA1Hash(string text) {
+      var SHA1 = new System.Security.Cryptography.SHA1CryptoServiceProvider();
+
+      byte[] arrayData;
+      byte[] arrayResult;
+      string result = null;
+      string temp = null;
+
+      arrayData = Encoding.ASCII.GetBytes(text);
+      arrayResult = SHA1.ComputeHash(arrayData);
+      for (int i = 0; i < arrayResult.Length; i++) {
+        temp = Convert.ToString(arrayResult[i], 16);
+        if (temp.Length == 1)
+          temp = "0" + temp;
+        result += temp;
+      }
+      return result;
+    }
+  }
+}
Index: /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/HeuristicLab.Services.ProblemInstances-3.3.Publish.xml
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/HeuristicLab.Services.ProblemInstances-3.3.Publish.xml	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/HeuristicLab.Services.ProblemInstances-3.3.Publish.xml	(revision 6780)
@@ -0,0 +1,4 @@
+﻿<?xml version="1.0" encoding="utf-8"?>
+<publishData>
+  <publishProfile publishUrl="services.heuristiclab.com" deleteExistingFiles="False" ftpAnonymousLogin="False" ftpPassiveMode="True" msdeploySite="services.heuristiclab.com/ProblemInstances-3.3" msdeploySiteID="" msdeployRemoteSitePhysicalPath="" msdeployAllowUntrustedCertificate="True" msdeploySkipExtraFilesOnServer="True" msdeployMarkAsApp="False" profileName="Publish to SERVICES" publishMethod="MSDeploy" replaceMatchingFiles="True" userName="" savePWD="False" userPWD="" SelectedForPublish="True" />
+</publishData>
Index: /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/HeuristicLab.Services.ProblemInstances-3.3.csproj
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/HeuristicLab.Services.ProblemInstances-3.3.csproj	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/HeuristicLab.Services.ProblemInstances-3.3.csproj	(revision 6780)
@@ -0,0 +1,155 @@
+﻿<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProductVersion>
+    </ProductVersion>
+    <SchemaVersion>2.0</SchemaVersion>
+    <ProjectGuid>{D4E9242F-DAA4-4A15-8DE7-91CECFFFD898}</ProjectGuid>
+    <ProjectTypeGuids>{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
+    <OutputType>Library</OutputType>
+    <AppDesignerFolder>Properties</AppDesignerFolder>
+    <RootNamespace>HeuristicLab.Services.ProblemInstances</RootNamespace>
+    <AssemblyName>HeuristicLab.Services.ProblemInstances-3.3</AssemblyName>
+    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>full</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <PublishDatabaseSettings>
+      <Objects>
+        <ObjectGroup Name="ProblemInstancesEntities-Deployment" Order="1">
+          <Destination Path="" />
+          <Object Type="dbFullSql">
+            <PreSource Path="Data Source=LOCALHOST\SQLEXPRESS%3bInitial Catalog=HeuristicLab.ProblemInstances%3bIntegrated Security=True%3bPooling=False" ScriptSchema="True" ScriptData="False" CopyAllFullTextCatalogs="False" />
+            <Source Path="obj\Debug\AutoScripts\ProblemInstancesEntities-Deployment_SchemaOnly.sql" Transacted="True" />
+          </Object>
+        </ObjectGroup>
+      </Objects>
+    </PublishDatabaseSettings>
+    <ExcludeGeneratedDebugSymbol>false</ExcludeGeneratedDebugSymbol>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <DebugType>pdbonly</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+    <PublishDatabaseSettings>
+      <Objects>
+      </Objects>
+    </PublishDatabaseSettings>
+    <ExcludeGeneratedDebugSymbol>true</ExcludeGeneratedDebugSymbol>
+  </PropertyGroup>
+  <PropertyGroup>
+    <SignAssembly>true</SignAssembly>
+  </PropertyGroup>
+  <PropertyGroup>
+    <AssemblyOriginatorKeyFile>HeuristicLab.snk</AssemblyOriginatorKeyFile>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="Microsoft.CSharp" />
+    <Reference Include="System.Data.Entity" />
+    <Reference Include="System.Security" />
+    <Reference Include="System.Web.DynamicData" />
+    <Reference Include="System.Web.Entity" />
+    <Reference Include="System.Web.ApplicationServices" />
+    <Reference Include="System" />
+    <Reference Include="System.Configuration" />
+    <Reference Include="System.Core" />
+    <Reference Include="System.Data" />
+    <Reference Include="System.Drawing" />
+    <Reference Include="System.EnterpriseServices" />
+    <Reference Include="System.Runtime.Serialization" />
+    <Reference Include="System.ServiceModel" />
+    <Reference Include="System.ServiceModel.Web" />
+    <Reference Include="System.Web" />
+    <Reference Include="System.Web.Extensions" />
+    <Reference Include="System.Web.Services" />
+    <Reference Include="System.Xml" />
+    <Reference Include="System.Xml.Linq" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="QAP\Initial.sql" />
+    <Content Include="QAP\QAP.svc" />
+    <Content Include="Web.config">
+      <SubType>Designer</SubType>
+    </Content>
+    <Content Include="Web.Debug.config">
+      <DependentUpon>Web.config</DependentUpon>
+    </Content>
+    <Content Include="Web.Release.config">
+      <DependentUpon>Web.config</DependentUpon>
+    </Content>
+  </ItemGroup>
+  <ItemGroup>
+    <EntityDeploy Include="ProblemInstancesModel.edmx">
+      <Generator>EntityModelCodeGenerator</Generator>
+      <LastGenOutput>ProblemInstancesModel.Designer.cs</LastGenOutput>
+    </EntityDeploy>
+    <None Include="HeuristicLab.snk" />
+    <None Include="Properties\AssemblyInfo.frame" />
+    <Compile Include="Auxiliary.cs" />
+    <Compile Include="SimpleSerializationException.cs" />
+    <Compile Include="SimpleSerializer.cs" />
+    <Compile Include="ProblemInstancesModel.Designer.cs">
+      <AutoGen>True</AutoGen>
+      <DesignTime>True</DesignTime>
+      <DependentUpon>ProblemInstancesModel.edmx</DependentUpon>
+    </Compile>
+    <Compile Include="QAP\IQAP.cs" />
+    <Compile Include="QAP\QAP.svc.cs">
+      <DependentUpon>QAP.svc</DependentUpon>
+    </Compile>
+    <Compile Include="Properties\AssemblyInfo.cs" />
+    <Compile Include="QAP\QAPInstanceDto.cs" />
+    <Compile Include="QAP\QAPSolutionDto.cs" />
+  </ItemGroup>
+  <ItemGroup>
+    <Folder Include="App_Data\" />
+  </ItemGroup>
+  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
+  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />
+  <ProjectExtensions>
+    <VisualStudio>
+      <FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
+        <WebProjectProperties>
+          <UseIIS>False</UseIIS>
+          <AutoAssignPort>True</AutoAssignPort>
+          <DevelopmentServerPort>3978</DevelopmentServerPort>
+          <DevelopmentServerVPath>/</DevelopmentServerVPath>
+          <IISUrl>
+          </IISUrl>
+          <NTLMAuthentication>False</NTLMAuthentication>
+          <UseCustomServer>False</UseCustomServer>
+          <CustomServerUrl>
+          </CustomServerUrl>
+          <SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
+          <EnableWcfTestClientForSVCDefaultValue>True</EnableWcfTestClientForSVCDefaultValue>
+        </WebProjectProperties>
+      </FlavorProperties>
+    </VisualStudio>
+  </ProjectExtensions>
+  <PropertyGroup>
+    <PreBuildEvent>set Path=%25Path%25;$(ProjectDir);$(SolutionDir)
+set ProjectDir=$(ProjectDir)
+set SolutionDir=$(SolutionDir)
+set Outdir=$(Outdir)
+
+call PreBuildEvent.cmd</PreBuildEvent>
+  </PropertyGroup>
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
+       Other similar extension points exist, see Microsoft.Common.targets.
+  <Target Name="BeforeBuild">
+  </Target>
+  <Target Name="AfterBuild">
+  </Target>
+  -->
+</Project>
Index: /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/PrimitiveSerializationException.cs
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/PrimitiveSerializationException.cs	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/PrimitiveSerializationException.cs	(revision 6780)
@@ -0,0 +1,30 @@
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab 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.
+ *
+ * HeuristicLab 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 HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+using System;
+
+namespace HeuristicLab.Services.ProblemInstances {
+  public class PrimitiveSerializationException : Exception {
+    public PrimitiveSerializationException() : base() { }
+    public PrimitiveSerializationException(string message) : base(message) { }
+    public PrimitiveSerializationException(string message, Exception innerException) : base(message, innerException) { }
+  }
+}
Index: /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/ProblemInstancesModel.Designer.cs
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/ProblemInstancesModel.Designer.cs	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/ProblemInstancesModel.Designer.cs	(revision 6780)
@@ -0,0 +1,590 @@
+﻿//------------------------------------------------------------------------------
+// <auto-generated>
+//    This code was generated from a template.
+//
+//    Manual changes to this file may cause unexpected behavior in your application.
+//    Manual changes to this file will be overwritten if the code is regenerated.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+using System;
+using System.Data.Objects;
+using System.Data.Objects.DataClasses;
+using System.Data.EntityClient;
+using System.ComponentModel;
+using System.Xml.Serialization;
+using System.Runtime.Serialization;
+
+[assembly: EdmSchemaAttribute()]
+#region EDM Relationship Metadata
+
+[assembly: EdmRelationshipAttribute("ProblemInstancesModel", "FK_QAPSolution_QAPInstance1", "QAPInstance", System.Data.Metadata.Edm.RelationshipMultiplicity.One, typeof(HeuristicLab.Services.ProblemInstances.QAPInstance), "QAPSolution", System.Data.Metadata.Edm.RelationshipMultiplicity.Many, typeof(HeuristicLab.Services.ProblemInstances.QAPSolution), true)]
+
+#endregion
+
+namespace HeuristicLab.Services.ProblemInstances
+{
+    #region Contexts
+    
+    /// <summary>
+    /// No Metadata Documentation available.
+    /// </summary>
+    public partial class ProblemInstancesEntities : ObjectContext
+    {
+        #region Constructors
+    
+        /// <summary>
+        /// Initializes a new ProblemInstancesEntities object using the connection string found in the 'ProblemInstancesEntities' section of the application configuration file.
+        /// </summary>
+        public ProblemInstancesEntities() : base("name=ProblemInstancesEntities", "ProblemInstancesEntities")
+        {
+            this.ContextOptions.LazyLoadingEnabled = true;
+            OnContextCreated();
+        }
+    
+        /// <summary>
+        /// Initialize a new ProblemInstancesEntities object.
+        /// </summary>
+        public ProblemInstancesEntities(string connectionString) : base(connectionString, "ProblemInstancesEntities")
+        {
+            this.ContextOptions.LazyLoadingEnabled = true;
+            OnContextCreated();
+        }
+    
+        /// <summary>
+        /// Initialize a new ProblemInstancesEntities object.
+        /// </summary>
+        public ProblemInstancesEntities(EntityConnection connection) : base(connection, "ProblemInstancesEntities")
+        {
+            this.ContextOptions.LazyLoadingEnabled = true;
+            OnContextCreated();
+        }
+    
+        #endregion
+    
+        #region Partial Methods
+    
+        partial void OnContextCreated();
+    
+        #endregion
+    
+        #region ObjectSet Properties
+    
+        /// <summary>
+        /// No Metadata Documentation available.
+        /// </summary>
+        public ObjectSet<QAPInstance> QAPInstances
+        {
+            get
+            {
+                if ((_QAPInstances == null))
+                {
+                    _QAPInstances = base.CreateObjectSet<QAPInstance>("QAPInstances");
+                }
+                return _QAPInstances;
+            }
+        }
+        private ObjectSet<QAPInstance> _QAPInstances;
+    
+        /// <summary>
+        /// No Metadata Documentation available.
+        /// </summary>
+        public ObjectSet<QAPSolution> QAPSolutions
+        {
+            get
+            {
+                if ((_QAPSolutions == null))
+                {
+                    _QAPSolutions = base.CreateObjectSet<QAPSolution>("QAPSolutions");
+                }
+                return _QAPSolutions;
+            }
+        }
+        private ObjectSet<QAPSolution> _QAPSolutions;
+
+        #endregion
+        #region AddTo Methods
+    
+        /// <summary>
+        /// Deprecated Method for adding a new object to the QAPInstances EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
+        /// </summary>
+        public void AddToQAPInstances(QAPInstance qAPInstance)
+        {
+            base.AddObject("QAPInstances", qAPInstance);
+        }
+    
+        /// <summary>
+        /// Deprecated Method for adding a new object to the QAPSolutions EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
+        /// </summary>
+        public void AddToQAPSolutions(QAPSolution qAPSolution)
+        {
+            base.AddObject("QAPSolutions", qAPSolution);
+        }
+
+        #endregion
+    }
+    
+
+    #endregion
+    
+    #region Entities
+    
+    /// <summary>
+    /// No Metadata Documentation available.
+    /// </summary>
+    [EdmEntityTypeAttribute(NamespaceName="ProblemInstancesModel", Name="QAPInstance")]
+    [Serializable()]
+    [DataContractAttribute(IsReference=true)]
+    public partial class QAPInstance : EntityObject
+    {
+        #region Factory Method
+    
+        /// <summary>
+        /// Create a new QAPInstance object.
+        /// </summary>
+        /// <param name="name">Initial value of the Name property.</param>
+        /// <param name="maximization">Initial value of the Maximization property.</param>
+        /// <param name="weights">Initial value of the Weights property.</param>
+        /// <param name="weightsHash">Initial value of the WeightsHash property.</param>
+        /// <param name="distances">Initial value of the Distances property.</param>
+        /// <param name="distancesHash">Initial value of the DistancesHash property.</param>
+        /// <param name="problemSize">Initial value of the ProblemSize property.</param>
+        public static QAPInstance CreateQAPInstance(global::System.String name, global::System.Boolean maximization, global::System.String weights, global::System.String weightsHash, global::System.String distances, global::System.String distancesHash, global::System.Int32 problemSize)
+        {
+            QAPInstance qAPInstance = new QAPInstance();
+            qAPInstance.Name = name;
+            qAPInstance.Maximization = maximization;
+            qAPInstance.Weights = weights;
+            qAPInstance.WeightsHash = weightsHash;
+            qAPInstance.Distances = distances;
+            qAPInstance.DistancesHash = distancesHash;
+            qAPInstance.ProblemSize = problemSize;
+            return qAPInstance;
+        }
+
+        #endregion
+        #region Primitive Properties
+    
+        /// <summary>
+        /// No Metadata Documentation available.
+        /// </summary>
+        [EdmScalarPropertyAttribute(EntityKeyProperty=true, IsNullable=false)]
+        [DataMemberAttribute()]
+        public global::System.String Name
+        {
+            get
+            {
+                return _Name;
+            }
+            set
+            {
+                if (_Name != value)
+                {
+                    OnNameChanging(value);
+                    ReportPropertyChanging("Name");
+                    _Name = StructuralObject.SetValidValue(value, false);
+                    ReportPropertyChanged("Name");
+                    OnNameChanged();
+                }
+            }
+        }
+        private global::System.String _Name;
+        partial void OnNameChanging(global::System.String value);
+        partial void OnNameChanged();
+    
+        /// <summary>
+        /// No Metadata Documentation available.
+        /// </summary>
+        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
+        [DataMemberAttribute()]
+        public global::System.String Description
+        {
+            get
+            {
+                return _Description;
+            }
+            set
+            {
+                OnDescriptionChanging(value);
+                ReportPropertyChanging("Description");
+                _Description = StructuralObject.SetValidValue(value, true);
+                ReportPropertyChanged("Description");
+                OnDescriptionChanged();
+            }
+        }
+        private global::System.String _Description;
+        partial void OnDescriptionChanging(global::System.String value);
+        partial void OnDescriptionChanged();
+    
+        /// <summary>
+        /// No Metadata Documentation available.
+        /// </summary>
+        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
+        [DataMemberAttribute()]
+        public global::System.Boolean Maximization
+        {
+            get
+            {
+                return _Maximization;
+            }
+            set
+            {
+                OnMaximizationChanging(value);
+                ReportPropertyChanging("Maximization");
+                _Maximization = StructuralObject.SetValidValue(value);
+                ReportPropertyChanged("Maximization");
+                OnMaximizationChanged();
+            }
+        }
+        private global::System.Boolean _Maximization;
+        partial void OnMaximizationChanging(global::System.Boolean value);
+        partial void OnMaximizationChanged();
+    
+        /// <summary>
+        /// No Metadata Documentation available.
+        /// </summary>
+        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
+        [DataMemberAttribute()]
+        public global::System.String Weights
+        {
+            get
+            {
+                return _Weights;
+            }
+            set
+            {
+                OnWeightsChanging(value);
+                ReportPropertyChanging("Weights");
+                _Weights = StructuralObject.SetValidValue(value, false);
+                ReportPropertyChanged("Weights");
+                OnWeightsChanged();
+            }
+        }
+        private global::System.String _Weights;
+        partial void OnWeightsChanging(global::System.String value);
+        partial void OnWeightsChanged();
+    
+        /// <summary>
+        /// No Metadata Documentation available.
+        /// </summary>
+        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
+        [DataMemberAttribute()]
+        public global::System.String WeightsHash
+        {
+            get
+            {
+                return _WeightsHash;
+            }
+            set
+            {
+                OnWeightsHashChanging(value);
+                ReportPropertyChanging("WeightsHash");
+                _WeightsHash = StructuralObject.SetValidValue(value, false);
+                ReportPropertyChanged("WeightsHash");
+                OnWeightsHashChanged();
+            }
+        }
+        private global::System.String _WeightsHash;
+        partial void OnWeightsHashChanging(global::System.String value);
+        partial void OnWeightsHashChanged();
+    
+        /// <summary>
+        /// No Metadata Documentation available.
+        /// </summary>
+        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
+        [DataMemberAttribute()]
+        public global::System.String Distances
+        {
+            get
+            {
+                return _Distances;
+            }
+            set
+            {
+                OnDistancesChanging(value);
+                ReportPropertyChanging("Distances");
+                _Distances = StructuralObject.SetValidValue(value, false);
+                ReportPropertyChanged("Distances");
+                OnDistancesChanged();
+            }
+        }
+        private global::System.String _Distances;
+        partial void OnDistancesChanging(global::System.String value);
+        partial void OnDistancesChanged();
+    
+        /// <summary>
+        /// No Metadata Documentation available.
+        /// </summary>
+        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
+        [DataMemberAttribute()]
+        public global::System.String DistancesHash
+        {
+            get
+            {
+                return _DistancesHash;
+            }
+            set
+            {
+                OnDistancesHashChanging(value);
+                ReportPropertyChanging("DistancesHash");
+                _DistancesHash = StructuralObject.SetValidValue(value, false);
+                ReportPropertyChanged("DistancesHash");
+                OnDistancesHashChanged();
+            }
+        }
+        private global::System.String _DistancesHash;
+        partial void OnDistancesHashChanging(global::System.String value);
+        partial void OnDistancesHashChanged();
+    
+        /// <summary>
+        /// No Metadata Documentation available.
+        /// </summary>
+        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
+        [DataMemberAttribute()]
+        public global::System.Int32 ProblemSize
+        {
+            get
+            {
+                return _ProblemSize;
+            }
+            set
+            {
+                OnProblemSizeChanging(value);
+                ReportPropertyChanging("ProblemSize");
+                _ProblemSize = StructuralObject.SetValidValue(value);
+                ReportPropertyChanged("ProblemSize");
+                OnProblemSizeChanged();
+            }
+        }
+        private global::System.Int32 _ProblemSize;
+        partial void OnProblemSizeChanging(global::System.Int32 value);
+        partial void OnProblemSizeChanged();
+
+        #endregion
+    
+        #region Navigation Properties
+    
+        /// <summary>
+        /// No Metadata Documentation available.
+        /// </summary>
+        [XmlIgnoreAttribute()]
+        [SoapIgnoreAttribute()]
+        [DataMemberAttribute()]
+        [EdmRelationshipNavigationPropertyAttribute("ProblemInstancesModel", "FK_QAPSolution_QAPInstance1", "QAPSolution")]
+        public EntityCollection<QAPSolution> Solutions
+        {
+            get
+            {
+                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedCollection<QAPSolution>("ProblemInstancesModel.FK_QAPSolution_QAPInstance1", "QAPSolution");
+            }
+            set
+            {
+                if ((value != null))
+                {
+                    ((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedCollection<QAPSolution>("ProblemInstancesModel.FK_QAPSolution_QAPInstance1", "QAPSolution", value);
+                }
+            }
+        }
+
+        #endregion
+    }
+    
+    /// <summary>
+    /// No Metadata Documentation available.
+    /// </summary>
+    [EdmEntityTypeAttribute(NamespaceName="ProblemInstancesModel", Name="QAPSolution")]
+    [Serializable()]
+    [DataContractAttribute(IsReference=true)]
+    public partial class QAPSolution : EntityObject
+    {
+        #region Factory Method
+    
+        /// <summary>
+        /// Create a new QAPSolution object.
+        /// </summary>
+        /// <param name="id">Initial value of the Id property.</param>
+        /// <param name="name">Initial value of the Name property.</param>
+        /// <param name="quality">Initial value of the Quality property.</param>
+        public static QAPSolution CreateQAPSolution(global::System.Int32 id, global::System.String name, global::System.Double quality)
+        {
+            QAPSolution qAPSolution = new QAPSolution();
+            qAPSolution.Id = id;
+            qAPSolution.Name = name;
+            qAPSolution.Quality = quality;
+            return qAPSolution;
+        }
+
+        #endregion
+        #region Primitive Properties
+    
+        /// <summary>
+        /// No Metadata Documentation available.
+        /// </summary>
+        [EdmScalarPropertyAttribute(EntityKeyProperty=true, IsNullable=false)]
+        [DataMemberAttribute()]
+        public global::System.Int32 Id
+        {
+            get
+            {
+                return _Id;
+            }
+            set
+            {
+                if (_Id != value)
+                {
+                    OnIdChanging(value);
+                    ReportPropertyChanging("Id");
+                    _Id = StructuralObject.SetValidValue(value);
+                    ReportPropertyChanged("Id");
+                    OnIdChanged();
+                }
+            }
+        }
+        private global::System.Int32 _Id;
+        partial void OnIdChanging(global::System.Int32 value);
+        partial void OnIdChanged();
+    
+        /// <summary>
+        /// No Metadata Documentation available.
+        /// </summary>
+        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
+        [DataMemberAttribute()]
+        public global::System.String Name
+        {
+            get
+            {
+                return _Name;
+            }
+            set
+            {
+                OnNameChanging(value);
+                ReportPropertyChanging("Name");
+                _Name = StructuralObject.SetValidValue(value, false);
+                ReportPropertyChanged("Name");
+                OnNameChanged();
+            }
+        }
+        private global::System.String _Name;
+        partial void OnNameChanging(global::System.String value);
+        partial void OnNameChanged();
+    
+        /// <summary>
+        /// No Metadata Documentation available.
+        /// </summary>
+        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
+        [DataMemberAttribute()]
+        public global::System.String Assignment
+        {
+            get
+            {
+                return _Assignment;
+            }
+            set
+            {
+                OnAssignmentChanging(value);
+                ReportPropertyChanging("Assignment");
+                _Assignment = StructuralObject.SetValidValue(value, true);
+                ReportPropertyChanged("Assignment");
+                OnAssignmentChanged();
+            }
+        }
+        private global::System.String _Assignment;
+        partial void OnAssignmentChanging(global::System.String value);
+        partial void OnAssignmentChanged();
+    
+        /// <summary>
+        /// No Metadata Documentation available.
+        /// </summary>
+        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
+        [DataMemberAttribute()]
+        public global::System.String AssignmentHash
+        {
+            get
+            {
+                return _AssignmentHash;
+            }
+            set
+            {
+                OnAssignmentHashChanging(value);
+                ReportPropertyChanging("AssignmentHash");
+                _AssignmentHash = StructuralObject.SetValidValue(value, true);
+                ReportPropertyChanged("AssignmentHash");
+                OnAssignmentHashChanged();
+            }
+        }
+        private global::System.String _AssignmentHash;
+        partial void OnAssignmentHashChanging(global::System.String value);
+        partial void OnAssignmentHashChanged();
+    
+        /// <summary>
+        /// No Metadata Documentation available.
+        /// </summary>
+        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
+        [DataMemberAttribute()]
+        public global::System.Double Quality
+        {
+            get
+            {
+                return _Quality;
+            }
+            set
+            {
+                OnQualityChanging(value);
+                ReportPropertyChanging("Quality");
+                _Quality = StructuralObject.SetValidValue(value);
+                ReportPropertyChanged("Quality");
+                OnQualityChanged();
+            }
+        }
+        private global::System.Double _Quality;
+        partial void OnQualityChanging(global::System.Double value);
+        partial void OnQualityChanged();
+
+        #endregion
+    
+        #region Navigation Properties
+    
+        /// <summary>
+        /// No Metadata Documentation available.
+        /// </summary>
+        [XmlIgnoreAttribute()]
+        [SoapIgnoreAttribute()]
+        [DataMemberAttribute()]
+        [EdmRelationshipNavigationPropertyAttribute("ProblemInstancesModel", "FK_QAPSolution_QAPInstance1", "QAPInstance")]
+        public QAPInstance Instance
+        {
+            get
+            {
+                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<QAPInstance>("ProblemInstancesModel.FK_QAPSolution_QAPInstance1", "QAPInstance").Value;
+            }
+            set
+            {
+                ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<QAPInstance>("ProblemInstancesModel.FK_QAPSolution_QAPInstance1", "QAPInstance").Value = value;
+            }
+        }
+        /// <summary>
+        /// No Metadata Documentation available.
+        /// </summary>
+        [BrowsableAttribute(false)]
+        [DataMemberAttribute()]
+        public EntityReference<QAPInstance> InstanceReference
+        {
+            get
+            {
+                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<QAPInstance>("ProblemInstancesModel.FK_QAPSolution_QAPInstance1", "QAPInstance");
+            }
+            set
+            {
+                if ((value != null))
+                {
+                    ((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedReference<QAPInstance>("ProblemInstancesModel.FK_QAPSolution_QAPInstance1", "QAPInstance", value);
+                }
+            }
+        }
+
+        #endregion
+    }
+
+    #endregion
+    
+}
Index: /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/ProblemInstancesModel.edmx
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/ProblemInstancesModel.edmx	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/ProblemInstancesModel.edmx	(revision 6780)
@@ -0,0 +1,155 @@
+﻿<?xml version="1.0" encoding="utf-8"?>
+<edmx:Edmx Version="2.0" xmlns:edmx="http://schemas.microsoft.com/ado/2008/10/edmx">
+  <!-- EF Runtime content -->
+  <edmx:Runtime>
+    <!-- SSDL content -->
+    <edmx:StorageModels>
+    <Schema Namespace="ProblemInstancesModel.Store" Alias="Self" Provider="System.Data.SqlClient" ProviderManifestToken="2008" xmlns:store="http://schemas.microsoft.com/ado/2007/12/edm/EntityStoreSchemaGenerator" xmlns="http://schemas.microsoft.com/ado/2009/02/edm/ssdl">
+        <EntityContainer Name="ProblemInstancesModelStoreContainer">
+          <EntitySet Name="QAPInstance" EntityType="ProblemInstancesModel.Store.QAPInstance" store:Type="Tables" Schema="dbo" />
+          <EntitySet Name="QAPSolution" EntityType="ProblemInstancesModel.Store.QAPSolution" store:Type="Tables" Schema="dbo" />
+          <AssociationSet Name="FK_QAPSolution_QAPInstance" Association="ProblemInstancesModel.Store.FK_QAPSolution_QAPInstance">
+            <End Role="QAPInstance" EntitySet="QAPInstance" />
+            <End Role="QAPSolution" EntitySet="QAPSolution" />
+          </AssociationSet>
+        </EntityContainer>
+        <EntityType Name="QAPInstance">
+          <Key>
+            <PropertyRef Name="Name" />
+          </Key>
+          <Property Name="Name" Type="nvarchar" Nullable="false" MaxLength="64" />
+          <Property Name="Description" Type="ntext" />
+          <Property Name="Maximization" Type="bit" Nullable="false" />
+          <Property Name="Weights" Type="varchar(max)" Nullable="false" />
+          <Property Name="WeightsHash" Type="char" Nullable="false" MaxLength="40" />
+          <Property Name="Distances" Type="varchar(max)" Nullable="false" />
+          <Property Name="DistancesHash" Type="char" Nullable="false" MaxLength="40" />
+          <Property Name="ProblemSize" Type="int" Nullable="false" />
+        </EntityType>
+        <EntityType Name="QAPSolution">
+          <Key>
+            <PropertyRef Name="Id" />
+          </Key>
+          <Property Name="Id" Type="int" Nullable="false" StoreGeneratedPattern="Identity" />
+          <Property Name="Name" Type="nvarchar" Nullable="false" MaxLength="64" />
+          <Property Name="Assignment" Type="text" />
+          <Property Name="AssignmentHash" Type="char" MaxLength="40" />
+          <Property Name="Quality" Type="float" Nullable="false" />
+        </EntityType>
+        <Association Name="FK_QAPSolution_QAPInstance">
+          <End Role="QAPInstance" Type="ProblemInstancesModel.Store.QAPInstance" Multiplicity="1">
+            <OnDelete Action="Cascade" />
+          </End>
+          <End Role="QAPSolution" Type="ProblemInstancesModel.Store.QAPSolution" Multiplicity="*" />
+          <ReferentialConstraint>
+            <Principal Role="QAPInstance">
+              <PropertyRef Name="Name" />
+            </Principal>
+            <Dependent Role="QAPSolution">
+              <PropertyRef Name="Name" />
+            </Dependent>
+          </ReferentialConstraint>
+        </Association>
+      </Schema></edmx:StorageModels>
+    <!-- CSDL content -->
+    <edmx:ConceptualModels>
+      <Schema Namespace="ProblemInstancesModel" Alias="Self" xmlns:annotation="http://schemas.microsoft.com/ado/2009/02/edm/annotation" xmlns="http://schemas.microsoft.com/ado/2008/09/edm">
+        <EntityContainer Name="ProblemInstancesEntities" annotation:LazyLoadingEnabled="true">
+          <EntitySet Name="QAPInstances" EntityType="ProblemInstancesModel.QAPInstance" />
+          <EntitySet Name="QAPSolutions" EntityType="ProblemInstancesModel.QAPSolution" />
+          <AssociationSet Name="FK_QAPSolution_QAPInstance1" Association="ProblemInstancesModel.FK_QAPSolution_QAPInstance1">
+            <End Role="QAPInstance" EntitySet="QAPInstances" />
+            <End Role="QAPSolution" EntitySet="QAPSolutions" />
+          </AssociationSet>
+        </EntityContainer>
+        <EntityType Name="QAPInstance">
+          <Key>
+            <PropertyRef Name="Name" />
+          </Key>
+          <Property Type="String" Name="Name" Nullable="false" MaxLength="64" FixedLength="false" Unicode="true" />
+          <Property Type="String" Name="Description" MaxLength="Max" FixedLength="false" Unicode="true" />
+          <Property Type="Boolean" Name="Maximization" Nullable="false" />
+          <Property Type="String" Name="Weights" Nullable="false" MaxLength="Max" FixedLength="false" Unicode="false" />
+          <Property Type="String" Name="WeightsHash" Nullable="false" MaxLength="40" FixedLength="true" Unicode="false" />
+          <Property Type="String" Name="Distances" Nullable="false" MaxLength="Max" FixedLength="false" Unicode="false" />
+          <Property Type="String" Name="DistancesHash" Nullable="false" MaxLength="40" FixedLength="true" Unicode="false" />
+          <NavigationProperty Name="Solutions" Relationship="ProblemInstancesModel.FK_QAPSolution_QAPInstance1" FromRole="QAPInstance" ToRole="QAPSolution" />
+          <Property Type="Int32" Name="ProblemSize" Nullable="false" />
+        </EntityType>
+        <EntityType Name="QAPSolution">
+          <Key>
+            <PropertyRef Name="Id" />
+          </Key>
+          <Property Type="Int32" Name="Id" Nullable="false" annotation:StoreGeneratedPattern="Identity" />
+          <Property Type="String" Name="Name" Nullable="false" MaxLength="64" FixedLength="false" Unicode="true" />
+          <Property Type="String" Name="Assignment" Nullable="true" MaxLength="Max" FixedLength="false" Unicode="false" />
+          <Property Type="String" Name="AssignmentHash" Nullable="true" MaxLength="40" FixedLength="true" Unicode="false" />
+          <Property Type="Double" Name="Quality" Nullable="false" />
+          <NavigationProperty Name="Instance" Relationship="ProblemInstancesModel.FK_QAPSolution_QAPInstance1" FromRole="QAPSolution" ToRole="QAPInstance" />
+        </EntityType>
+        <Association Name="FK_QAPSolution_QAPInstance1">
+          <End Type="ProblemInstancesModel.QAPInstance" Role="QAPInstance" Multiplicity="1" />
+          <End Type="ProblemInstancesModel.QAPSolution" Role="QAPSolution" Multiplicity="*" />
+          <ReferentialConstraint>
+            <Principal Role="QAPInstance">
+              <PropertyRef Name="Name" />
+            </Principal>
+            <Dependent Role="QAPSolution">
+              <PropertyRef Name="Name" />
+            </Dependent>
+          </ReferentialConstraint>
+        </Association>
+      </Schema>
+    </edmx:ConceptualModels>
+    <!-- C-S mapping content -->
+    <edmx:Mappings>
+      <Mapping Space="C-S" xmlns="http://schemas.microsoft.com/ado/2008/09/mapping/cs">
+        <EntityContainerMapping StorageEntityContainer="ProblemInstancesModelStoreContainer" CdmEntityContainer="ProblemInstancesEntities">
+          <EntitySetMapping Name="QAPInstances"><EntityTypeMapping TypeName="ProblemInstancesModel.QAPInstance"><MappingFragment StoreEntitySet="QAPInstance">
+            <ScalarProperty Name="ProblemSize" ColumnName="ProblemSize" />
+                <ScalarProperty Name="DistancesHash" ColumnName="DistancesHash" />
+                <ScalarProperty Name="Distances" ColumnName="Distances" />
+                <ScalarProperty Name="WeightsHash" ColumnName="WeightsHash" />
+                <ScalarProperty Name="Weights" ColumnName="Weights" />
+                <ScalarProperty Name="Maximization" ColumnName="Maximization" />
+                <ScalarProperty Name="Description" ColumnName="Description" />
+                <ScalarProperty Name="Name" ColumnName="Name" />
+              </MappingFragment></EntityTypeMapping></EntitySetMapping>
+          <EntitySetMapping Name="QAPSolutions"><EntityTypeMapping TypeName="ProblemInstancesModel.QAPSolution"><MappingFragment StoreEntitySet="QAPSolution">
+            <ScalarProperty Name="Quality" ColumnName="Quality" />
+                <ScalarProperty Name="AssignmentHash" ColumnName="AssignmentHash" />
+                <ScalarProperty Name="Assignment" ColumnName="Assignment" />
+                <ScalarProperty Name="Name" ColumnName="Name" />
+                <ScalarProperty Name="Id" ColumnName="Id" />
+              </MappingFragment></EntityTypeMapping></EntitySetMapping>
+        </EntityContainerMapping>
+      </Mapping>
+    </edmx:Mappings>
+  </edmx:Runtime>
+  <!-- EF Designer content (DO NOT EDIT MANUALLY BELOW HERE) -->
+  <Designer xmlns="http://schemas.microsoft.com/ado/2008/10/edmx">
+    <Connection>
+      <DesignerInfoPropertySet>
+        <DesignerProperty Name="MetadataArtifactProcessing" Value="EmbedInOutputAssembly" />
+      </DesignerInfoPropertySet>
+    </Connection>
+    <Options>
+      <DesignerInfoPropertySet>
+        <DesignerProperty Name="ValidateOnBuild" Value="true" />
+        <DesignerProperty Name="EnablePluralization" Value="False" />
+        <DesignerProperty Name="IncludeForeignKeysInModel" Value="True" />
+      </DesignerInfoPropertySet>
+    </Options>
+    <!-- Diagram content (shape and connector positions) -->
+    <Diagrams>
+      <Diagram Name="ProblemInstancesModel">
+        <EntityTypeShape EntityType="ProblemInstancesModel.QAPInstance" Width="1.5" PointX="0.75" PointY="1" Height="2.7494921874999996" IsExpanded="true" />
+        <EntityTypeShape EntityType="ProblemInstancesModel.QAPSolution" Width="1.5" PointX="3" PointY="1.25" Height="2.172587890625" IsExpanded="true" />
+        <AssociationConnector Association="ProblemInstancesModel.FK_QAPSolution_QAPInstance1" >
+          <ConnectorPoint PointX="2.25" PointY="2.3362939453125" />
+          <ConnectorPoint PointX="3" PointY="2.3362939453125" />
+        </AssociationConnector>
+      </Diagram>
+    </Diagrams>
+  </Designer>
+</edmx:Edmx>
Index: /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/Properties/AssemblyInfo.frame
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/Properties/AssemblyInfo.frame	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/Properties/AssemblyInfo.frame	(revision 6780)
@@ -0,0 +1,56 @@
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab 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.
+ *
+ * HeuristicLab 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 HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+using System.Reflection;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following 
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("HeuristicLab.Services.ProblemInstances")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("HEAL")]
+[assembly: AssemblyProduct("HeuristicLab.Services.ProblemInstances")]
+[assembly: AssemblyCopyright("(c) 2002-2011 HEAL")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Setting ComVisible to false makes the types in this assembly not visible 
+// to COM components.  If you need to access a type in this assembly from 
+// COM, set the ComVisible attribute to true on that type.
+[assembly: ComVisible(false)]
+
+// The following GUID is for the ID of the typelib if this project is exposed to COM
+[assembly: Guid("59cd6e99-eb5f-46e6-b170-5fa34666d4a6")]
+
+// Version information for an assembly consists of the following four values:
+//
+//      Major Version
+//      Minor Version 
+//      Build Number
+//      Revision
+//
+// You can specify all the values or you can default the Revision and Build Numbers 
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("3.3.0.0")]
+[assembly: AssemblyFileVersion("3.3.5.$WCREV$")]
Index: /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/QAP/IQAP.cs
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/QAP/IQAP.cs	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/QAP/IQAP.cs	(revision 6780)
@@ -0,0 +1,36 @@
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab 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.
+ *
+ * HeuristicLab 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 HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+using System.ServiceModel;
+
+namespace HeuristicLab.Services.ProblemInstances {
+  [ServiceContract]
+  public interface IQAP {
+    [OperationContract]
+    string[] GetProblemInstances();
+
+    [OperationContract]
+    QAPInstanceDto GetProblemInstanceData(string instance);
+
+    [OperationContract]
+    QAPSolutionDto[] GetBestSolutionsData(string instance);
+  }
+}
Index: /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/QAP/QAP.svc
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/QAP/QAP.svc	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/QAP/QAP.svc	(revision 6780)
@@ -0,0 +1,1 @@
+﻿<%@ ServiceHost Language="C#" Debug="true" Service="HeuristicLab.Services.ProblemInstances.QAP" CodeBehind="QAP.svc.cs" %>
Index: /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/QAP/QAP.svc.cs
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/QAP/QAP.svc.cs	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/QAP/QAP.svc.cs	(revision 6780)
@@ -0,0 +1,53 @@
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab 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.
+ *
+ * HeuristicLab 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 HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+using System.Linq;
+
+namespace HeuristicLab.Services.ProblemInstances {
+  public class QAP : IQAP {
+    public string[] GetProblemInstances() {
+      using (ProblemInstancesEntities context = new ProblemInstancesEntities()) {
+        return context.QAPInstances.Select(x => x.Name).ToArray();
+      }
+    }
+
+    public QAPInstanceDto GetProblemInstanceData(string instance) {
+      using (ProblemInstancesEntities context = new ProblemInstancesEntities()) {
+        return new QAPInstanceDto(context.QAPInstances.Where(x => x.Name == instance).Single());
+      }
+    }
+
+    public QAPSolutionDto[] GetBestSolutionsData(string instance) {
+      using (ProblemInstancesEntities context = new ProblemInstancesEntities()) {
+        QAPInstance qap = context.QAPInstances.Where(x => x.Name == instance).SingleOrDefault();
+        if (qap == null) return new QAPSolutionDto[0];
+        context.LoadProperty<QAPInstance>(qap, x => x.Solutions);
+        double best = double.NaN;
+        if (!qap.Solutions.Any()) return new QAPSolutionDto[0];
+
+        if (qap.Maximization) best = qap.Solutions.Max(x => x.Quality);
+        else best = qap.Solutions.Min(x => x.Quality);
+
+        return qap.Solutions.Where(x => x.Quality == best).Select(x => new QAPSolutionDto(x)).ToArray();
+      }
+    }
+  }
+}
Index: /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/QAP/QAPInstanceDto.cs
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/QAP/QAPInstanceDto.cs	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/QAP/QAPInstanceDto.cs	(revision 6780)
@@ -0,0 +1,81 @@
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab 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.
+ *
+ * HeuristicLab 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 HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+using System;
+using System.Linq;
+using System.Runtime.Serialization;
+
+namespace HeuristicLab.Services.ProblemInstances {
+  [DataContract]
+  public class QAPInstanceDto {
+    [DataMember]
+    public string Name { get; set; }
+    [DataMember]
+    public string Description { get; set; }
+    [DataMember]
+    public bool Maximization { get; set; }
+    [DataMember]
+    public double[][] Weights { get; set; }
+    [DataMember]
+    public double[][] Distances { get; set; }
+    [DataMember]
+    public double BestKnownQuality { get; set; }
+    [DataMember]
+    public bool HasBestKnownQuality { get; set; }
+
+    public QAPInstanceDto() {
+      Name = "-=UNDEFINED=-";
+    }
+
+    public QAPInstanceDto(QAPInstance qAPInstance) {
+      Name = qAPInstance.Name;
+      Description = qAPInstance.Description;
+      Maximization = qAPInstance.Maximization;
+      try {
+        Weights = SimpleSerializer.DeserializeDoubleMatrix(qAPInstance.Weights);
+        Distances = SimpleSerializer.DeserializeDoubleMatrix(qAPInstance.Distances);
+      } catch (ArgumentException e) {
+        throw new SimpleSerializationException("Failed to deserialize the weights or distance matrix.", e);
+      }
+      BestKnownQuality = double.NaN;
+      HasBestKnownQuality = false;
+      if (qAPInstance.Solutions.Any()) {
+        double bestQuality;
+        if (Maximization) bestQuality = qAPInstance.Solutions.Max(x => x.Quality);
+        else bestQuality = qAPInstance.Solutions.Min(x => x.Quality);
+        HasBestKnownQuality = true;
+      }
+    }
+
+    public bool Validate() {
+      bool valid = Name.Trim() != string.Empty
+        && Name != "-=UNDEFINED=-"
+        && Weights.GetLength(0) == Distances.GetLength(0);
+      if (valid) {
+        for (int i = 0; i < Weights.GetLength(0); i++) {
+          valid = Weights[i].Length == Distances[i].Length;
+          if (!valid) break;
+        }
+      }
+      return valid;
+    }
+  }
+}
Index: /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/QAP/QAPSolutionDto.cs
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/QAP/QAPSolutionDto.cs	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/QAP/QAPSolutionDto.cs	(revision 6780)
@@ -0,0 +1,46 @@
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab 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.
+ *
+ * HeuristicLab 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 HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+using System;
+using System.Runtime.Serialization;
+
+namespace HeuristicLab.Services.ProblemInstances {
+  [DataContract]
+  public class QAPSolutionDto {
+    [DataMember]
+    public bool AssignmentUndefined { get; set; }
+    [DataMember]
+    public int[] Assignment { get; set; }
+    [DataMember]
+    public double Quality { get; set; }
+
+    public QAPSolutionDto() {
+      Quality = double.NaN;
+    }
+
+    public QAPSolutionDto(QAPSolution x) {
+      AssignmentUndefined = String.IsNullOrEmpty(x.Assignment);
+      if (!AssignmentUndefined)
+        Assignment = SimpleSerializer.DeserializeIntArray(x.Assignment);
+      Quality = x.Quality;
+    }
+  }
+}
Index: /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/SimpleSerializationException.cs
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/SimpleSerializationException.cs	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/SimpleSerializationException.cs	(revision 6780)
@@ -0,0 +1,30 @@
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab 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.
+ *
+ * HeuristicLab 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 HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+using System;
+
+namespace HeuristicLab.Services.ProblemInstances {
+  public class SimpleSerializationException : Exception {
+    public SimpleSerializationException() : base() { }
+    public SimpleSerializationException(string message) : base(message) { }
+    public SimpleSerializationException(string message, Exception innerException) : base(message, innerException) { }
+  }
+}
Index: /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/SimpleSerializer.cs
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/SimpleSerializer.cs	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/SimpleSerializer.cs	(revision 6780)
@@ -0,0 +1,166 @@
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab 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.
+ *
+ * HeuristicLab 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 HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+using System;
+using System.Globalization;
+using System.Text;
+
+namespace HeuristicLab.Services.ProblemInstances {
+  public static class SimpleSerializer {
+    #region Double Matrix
+    public static string SerializeDoubleMatrix(double[][] matrix) {
+      StringBuilder builder = new StringBuilder();
+      int dim1 = matrix.Length;
+      int dim2 = matrix[0].Length;
+      builder.Append(dim1.ToString(CultureInfo.InvariantCulture.NumberFormat));
+      builder.Append(";");
+      builder.Append(dim2.ToString(CultureInfo.InvariantCulture.NumberFormat));
+      for (int i = 0; i < dim1; i++) {
+        for (int j = 0; j < dim2; j++) {
+          if (matrix[i].Length != dim2) throw new ArgumentException("ERROR jagged array is not a matrix!");
+          builder.Append(";" + matrix[i][j].ToString(CultureInfo.InvariantCulture.NumberFormat));
+        }
+      }
+      return builder.ToString();
+    }
+    public static string SerializeDoubleMatrix(double[,] matrix) {
+      StringBuilder builder = new StringBuilder();
+      int dim1 = matrix.GetLength(0);
+      int dim2 = matrix.GetLength(1);
+      builder.Append(dim1.ToString(CultureInfo.InvariantCulture.NumberFormat));
+      builder.Append(";");
+      builder.Append(dim2.ToString(CultureInfo.InvariantCulture.NumberFormat));
+      for (int i = 0; i < dim1; i++) {
+        for (int j = 0; j < dim2; j++) {
+          builder.Append(";" + matrix[i, j].ToString(CultureInfo.InvariantCulture.NumberFormat));
+        }
+      }
+      return builder.ToString();
+    }
+
+    public static double[][] DeserializeDoubleMatrix(string data) {
+      string[] tokens = data.Split(';');
+      int dim1 = int.Parse(tokens[0], CultureInfo.InvariantCulture.NumberFormat);
+      int dim2 = int.Parse(tokens[1], CultureInfo.InvariantCulture.NumberFormat);
+      if (tokens.Length != (dim1 * dim2) + 2) throw new SimpleSerializationException("ERROR: serialized data does not represent a matrix!");
+      double[][] result = new double[dim1][];
+      for (int i = 0; i < dim1; i++) {
+        result[i] = new double[dim2];
+        for (int j = 0; j < dim2; j++)
+          result[i][j] = double.Parse(tokens[i * dim1 + j + 2], CultureInfo.InvariantCulture.NumberFormat);
+      }
+      return result;
+    }
+    #endregion
+
+    #region Int Matrix
+    public static string SerializeIntMatrix(int[][] matrix) {
+      StringBuilder builder = new StringBuilder();
+      int dim1 = matrix.Length;
+      int dim2 = matrix[0].Length;
+      builder.Append(dim1.ToString(CultureInfo.InvariantCulture.NumberFormat));
+      builder.Append(";");
+      builder.Append(dim2.ToString(CultureInfo.InvariantCulture.NumberFormat));
+      for (int i = 0; i < dim1; i++) {
+        for (int j = 0; j < dim2; j++) {
+          if (matrix[i].Length != dim2) throw new ArgumentException("ERROR jagged array is not a matrix!");
+          builder.Append(";" + matrix[i][j].ToString(CultureInfo.InvariantCulture.NumberFormat));
+        }
+      }
+      return builder.ToString();
+    }
+    public static string SerializeIntMatrix(int[,] matrix) {
+      StringBuilder builder = new StringBuilder();
+      int dim1 = matrix.GetLength(0);
+      int dim2 = matrix.GetLength(1);
+      builder.Append(dim1.ToString(CultureInfo.InvariantCulture.NumberFormat));
+      builder.Append(";");
+      builder.Append(dim2.ToString(CultureInfo.InvariantCulture.NumberFormat));
+      for (int i = 0; i < dim1; i++) {
+        for (int j = 0; j < dim2; j++) {
+          builder.Append(";" + matrix[i, j].ToString(CultureInfo.InvariantCulture.NumberFormat));
+        }
+      }
+      return builder.ToString();
+    }
+
+    public static int[][] DeserializeIntMatrix(string data) {
+      string[] tokens = data.Split(';');
+      int dim1 = int.Parse(tokens[0], CultureInfo.InvariantCulture.NumberFormat);
+      int dim2 = int.Parse(tokens[1], CultureInfo.InvariantCulture.NumberFormat);
+      if (tokens.Length != (dim1 * dim2) + 2) throw new SimpleSerializationException("ERROR: serialized data does not represent a matrix!");
+      int[][] result = new int[dim1][];
+      for (int i = 0; i < dim1; i++) {
+        result[i] = new int[dim2];
+        for (int j = 0; j < dim2; j++)
+          result[i][j] = int.Parse(tokens[i * dim1 + j + 2], CultureInfo.InvariantCulture.NumberFormat);
+      }
+      return result;
+    }
+    #endregion
+
+    #region Double Array
+    public static string SerializeDoubleArray(double[] array) {
+      StringBuilder builder = new StringBuilder();
+      int dim1 = array.Length;
+      builder.Append(dim1.ToString(CultureInfo.InvariantCulture.NumberFormat));
+      builder.Append(";");
+      for (int i = 0; i < dim1; i++) {
+        builder.Append(";" + array[i].ToString(CultureInfo.InvariantCulture.NumberFormat));
+      }
+      return builder.ToString();
+    }
+
+    public static double[] DeserializeDoubleArray(string array) {
+      string[] tokens = array.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
+      int dim1 = int.Parse(tokens[0], CultureInfo.InvariantCulture.NumberFormat);
+      double[] result = new double[dim1];
+      for (int i = 0; i < dim1; i++) {
+        result[i] = double.Parse(tokens[i + 1], CultureInfo.InvariantCulture.NumberFormat);
+      }
+      return result;
+    }
+    #endregion
+
+    #region Int Array
+    public static string SerializeIntArray(int[] array) {
+      StringBuilder builder = new StringBuilder();
+      int dim1 = array.Length;
+      builder.Append(dim1.ToString(CultureInfo.InvariantCulture.NumberFormat));
+      builder.Append(";");
+      for (int i = 0; i < dim1; i++) {
+        builder.Append(";" + array[i].ToString(CultureInfo.InvariantCulture.NumberFormat));
+      }
+      return builder.ToString();
+    }
+
+    public static int[] DeserializeIntArray(string array) {
+      string[] tokens = array.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
+      int dim1 = int.Parse(tokens[0], CultureInfo.InvariantCulture.NumberFormat);
+      int[] result = new int[dim1];
+      for (int i = 0; i < dim1; i++) {
+        result[i] = int.Parse(tokens[i + 1], CultureInfo.InvariantCulture.NumberFormat);
+      }
+      return result;
+    }
+    #endregion
+  }
+}
Index: /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/Web.Debug.config
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/Web.Debug.config	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/Web.Debug.config	(revision 6780)
@@ -0,0 +1,7 @@
+﻿<?xml version="1.0"?>
+
+<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
+
+<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
+  
+</configuration>
Index: /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/Web.Release.config
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/Web.Release.config	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/Web.Release.config	(revision 6780)
@@ -0,0 +1,14 @@
+﻿<?xml version="1.0"?>
+
+<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
+
+<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
+
+  <system.web>
+    <compilation xdt:Transform="RemoveAttributes(debug)" />
+  </system.web>
+
+  <connectionStrings xdt:Transform="Replace">
+    <add name="ProblemInstancesEntities" connectionString="metadata=res://*/ProblemInstancesModel.csdl|res://*/ProblemInstancesModel.ssdl|res://*/ProblemInstancesModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=LOCALHOST;Initial Catalog=HeuristicLab.ProblemInstances;Integrated Security=True&quot;" providerName="System.Data.EntityClient" />
+  </connectionStrings>
+</configuration>
Index: /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/Web.config
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/Web.config	(revision 6780)
+++ /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/3.3/Web.config	(revision 6780)
@@ -0,0 +1,30 @@
+﻿<?xml version="1.0" encoding="utf-8"?>
+<configuration>
+  <system.web>
+    <compilation debug="true" targetFramework="4.0">
+      <assemblies>
+        <add assembly="System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
+      </assemblies>
+    </compilation>
+  </system.web>
+  <system.serviceModel>
+    <behaviors>
+      <serviceBehaviors>
+        <behavior>
+          <dataContractSerializer maxItemsInObjectGraph="2147483647" />
+          <!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment -->
+          <serviceMetadata httpGetEnabled="true" />
+          <!-- To receive exception details in faults for debugging purposes, set the value below to true.  Set to false before deployment to avoid disclosing exception information -->
+          <serviceDebug includeExceptionDetailInFaults="true" />
+        </behavior>
+      </serviceBehaviors>
+    </behaviors>
+    <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
+  </system.serviceModel>
+  <system.webServer>
+    <modules runAllManagedModulesForAllRequests="true" />
+  </system.webServer>
+  <connectionStrings>
+    <add name="ProblemInstancesEntities" connectionString="metadata=res://*/ProblemInstancesModel.csdl|res://*/ProblemInstancesModel.ssdl|res://*/ProblemInstancesModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=LOCALHOST\SQLEXPRESS;Initial Catalog=HeuristicLab.ProblemInstances;Integrated Security=True;Pooling=False;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" />
+  </connectionStrings>
+</configuration>
Index: anches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/Auxiliary.cs
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/Auxiliary.cs	(revision 6779)
+++ 	(revision )
@@ -1,46 +1,0 @@
-﻿#region License Information
-/* HeuristicLab
- * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
- *
- * This file is part of HeuristicLab.
- *
- * HeuristicLab 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.
- *
- * HeuristicLab 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 HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
- */
-#endregion
-
-using System;
-using System.Text;
-
-namespace HeuristicLab.Services.ProblemInstances {
-  public class Auxiliary {
-    public static string GetSHA1Hash(string text) {
-      var SHA1 = new System.Security.Cryptography.SHA1CryptoServiceProvider();
-
-      byte[] arrayData;
-      byte[] arrayResult;
-      string result = null;
-      string temp = null;
-
-      arrayData = Encoding.ASCII.GetBytes(text);
-      arrayResult = SHA1.ComputeHash(arrayData);
-      for (int i = 0; i < arrayResult.Length; i++) {
-        temp = Convert.ToString(arrayResult[i], 16);
-        if (temp.Length == 1)
-          temp = "0" + temp;
-        result += temp;
-      }
-      return result;
-    }
-  }
-}
Index: anches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/HeuristicLab.Services.ProblemInstances-3.3.Publish.xml
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/HeuristicLab.Services.ProblemInstances-3.3.Publish.xml	(revision 6779)
+++ 	(revision )
@@ -1,4 +1,0 @@
-﻿<?xml version="1.0" encoding="utf-8"?>
-<publishData>
-  <publishProfile publishUrl="services.heuristiclab.com" deleteExistingFiles="False" ftpAnonymousLogin="False" ftpPassiveMode="True" msdeploySite="services.heuristiclab.com/ProblemInstances-3.3" msdeploySiteID="" msdeployRemoteSitePhysicalPath="" msdeployAllowUntrustedCertificate="True" msdeploySkipExtraFilesOnServer="True" msdeployMarkAsApp="False" profileName="Publish to SERVICES" publishMethod="MSDeploy" replaceMatchingFiles="True" userName="" savePWD="False" userPWD="" SelectedForPublish="True" />
-</publishData>
Index: anches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/HeuristicLab.Services.ProblemInstances-3.3.csproj
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/HeuristicLab.Services.ProblemInstances-3.3.csproj	(revision 6779)
+++ 	(revision )
@@ -1,155 +1,0 @@
-﻿<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>
-    </ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{D4E9242F-DAA4-4A15-8DE7-91CECFFFD898}</ProjectGuid>
-    <ProjectTypeGuids>{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>HeuristicLab.Services.ProblemInstances</RootNamespace>
-    <AssemblyName>HeuristicLab.Services.ProblemInstances-3.3</AssemblyName>
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\</OutputPath>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <PublishDatabaseSettings>
-      <Objects>
-        <ObjectGroup Name="ProblemInstancesEntities-Deployment" Order="1">
-          <Destination Path="" />
-          <Object Type="dbFullSql">
-            <PreSource Path="Data Source=LOCALHOST\SQLEXPRESS%3bInitial Catalog=HeuristicLab.ProblemInstances%3bIntegrated Security=True%3bPooling=False" ScriptSchema="True" ScriptData="False" CopyAllFullTextCatalogs="False" />
-            <Source Path="obj\Debug\AutoScripts\ProblemInstancesEntities-Deployment_SchemaOnly.sql" Transacted="True" />
-          </Object>
-        </ObjectGroup>
-      </Objects>
-    </PublishDatabaseSettings>
-    <ExcludeGeneratedDebugSymbol>false</ExcludeGeneratedDebugSymbol>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\</OutputPath>
-    <DefineConstants>TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <PublishDatabaseSettings>
-      <Objects>
-      </Objects>
-    </PublishDatabaseSettings>
-    <ExcludeGeneratedDebugSymbol>true</ExcludeGeneratedDebugSymbol>
-  </PropertyGroup>
-  <PropertyGroup>
-    <SignAssembly>true</SignAssembly>
-  </PropertyGroup>
-  <PropertyGroup>
-    <AssemblyOriginatorKeyFile>HeuristicLab.snk</AssemblyOriginatorKeyFile>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="Microsoft.CSharp" />
-    <Reference Include="System.Data.Entity" />
-    <Reference Include="System.Security" />
-    <Reference Include="System.Web.DynamicData" />
-    <Reference Include="System.Web.Entity" />
-    <Reference Include="System.Web.ApplicationServices" />
-    <Reference Include="System" />
-    <Reference Include="System.Configuration" />
-    <Reference Include="System.Core" />
-    <Reference Include="System.Data" />
-    <Reference Include="System.Drawing" />
-    <Reference Include="System.EnterpriseServices" />
-    <Reference Include="System.Runtime.Serialization" />
-    <Reference Include="System.ServiceModel" />
-    <Reference Include="System.ServiceModel.Web" />
-    <Reference Include="System.Web" />
-    <Reference Include="System.Web.Extensions" />
-    <Reference Include="System.Web.Services" />
-    <Reference Include="System.Xml" />
-    <Reference Include="System.Xml.Linq" />
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="QAP\Initial.sql" />
-    <Content Include="QAP\QAP.svc" />
-    <Content Include="Web.config">
-      <SubType>Designer</SubType>
-    </Content>
-    <Content Include="Web.Debug.config">
-      <DependentUpon>Web.config</DependentUpon>
-    </Content>
-    <Content Include="Web.Release.config">
-      <DependentUpon>Web.config</DependentUpon>
-    </Content>
-  </ItemGroup>
-  <ItemGroup>
-    <EntityDeploy Include="ProblemInstancesModel.edmx">
-      <Generator>EntityModelCodeGenerator</Generator>
-      <LastGenOutput>ProblemInstancesModel.Designer.cs</LastGenOutput>
-    </EntityDeploy>
-    <None Include="HeuristicLab.snk" />
-    <None Include="Properties\AssemblyInfo.frame" />
-    <Compile Include="Auxiliary.cs" />
-    <Compile Include="SimpleSerializationException.cs" />
-    <Compile Include="SimpleSerializer.cs" />
-    <Compile Include="ProblemInstancesModel.Designer.cs">
-      <AutoGen>True</AutoGen>
-      <DesignTime>True</DesignTime>
-      <DependentUpon>ProblemInstancesModel.edmx</DependentUpon>
-    </Compile>
-    <Compile Include="QAP\IQAP.cs" />
-    <Compile Include="QAP\QAP.svc.cs">
-      <DependentUpon>QAP.svc</DependentUpon>
-    </Compile>
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="QAP\QAPInstanceDto.cs" />
-    <Compile Include="QAP\QAPSolutionDto.cs" />
-  </ItemGroup>
-  <ItemGroup>
-    <Folder Include="App_Data\" />
-  </ItemGroup>
-  <Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
-  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />
-  <ProjectExtensions>
-    <VisualStudio>
-      <FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
-        <WebProjectProperties>
-          <UseIIS>False</UseIIS>
-          <AutoAssignPort>True</AutoAssignPort>
-          <DevelopmentServerPort>3978</DevelopmentServerPort>
-          <DevelopmentServerVPath>/</DevelopmentServerVPath>
-          <IISUrl>
-          </IISUrl>
-          <NTLMAuthentication>False</NTLMAuthentication>
-          <UseCustomServer>False</UseCustomServer>
-          <CustomServerUrl>
-          </CustomServerUrl>
-          <SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
-          <EnableWcfTestClientForSVCDefaultValue>True</EnableWcfTestClientForSVCDefaultValue>
-        </WebProjectProperties>
-      </FlavorProperties>
-    </VisualStudio>
-  </ProjectExtensions>
-  <PropertyGroup>
-    <PreBuildEvent>set Path=%25Path%25;$(ProjectDir);$(SolutionDir)
-set ProjectDir=$(ProjectDir)
-set SolutionDir=$(SolutionDir)
-set Outdir=$(Outdir)
-
-call PreBuildEvent.cmd</PreBuildEvent>
-  </PropertyGroup>
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
-       Other similar extension points exist, see Microsoft.Common.targets.
-  <Target Name="BeforeBuild">
-  </Target>
-  <Target Name="AfterBuild">
-  </Target>
-  -->
-</Project>
Index: anches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/PrimitiveSerializationException.cs
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/PrimitiveSerializationException.cs	(revision 6779)
+++ 	(revision )
@@ -1,30 +1,0 @@
-﻿#region License Information
-/* HeuristicLab
- * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
- *
- * This file is part of HeuristicLab.
- *
- * HeuristicLab 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.
- *
- * HeuristicLab 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 HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
- */
-#endregion
-
-using System;
-
-namespace HeuristicLab.Services.ProblemInstances {
-  public class PrimitiveSerializationException : Exception {
-    public PrimitiveSerializationException() : base() { }
-    public PrimitiveSerializationException(string message) : base(message) { }
-    public PrimitiveSerializationException(string message, Exception innerException) : base(message, innerException) { }
-  }
-}
Index: anches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/ProblemInstancesModel.Designer.cs
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/ProblemInstancesModel.Designer.cs	(revision 6779)
+++ 	(revision )
@@ -1,590 +1,0 @@
-﻿//------------------------------------------------------------------------------
-// <auto-generated>
-//    This code was generated from a template.
-//
-//    Manual changes to this file may cause unexpected behavior in your application.
-//    Manual changes to this file will be overwritten if the code is regenerated.
-// </auto-generated>
-//------------------------------------------------------------------------------
-
-using System;
-using System.Data.Objects;
-using System.Data.Objects.DataClasses;
-using System.Data.EntityClient;
-using System.ComponentModel;
-using System.Xml.Serialization;
-using System.Runtime.Serialization;
-
-[assembly: EdmSchemaAttribute()]
-#region EDM Relationship Metadata
-
-[assembly: EdmRelationshipAttribute("ProblemInstancesModel", "FK_QAPSolution_QAPInstance1", "QAPInstance", System.Data.Metadata.Edm.RelationshipMultiplicity.One, typeof(HeuristicLab.Services.ProblemInstances.QAPInstance), "QAPSolution", System.Data.Metadata.Edm.RelationshipMultiplicity.Many, typeof(HeuristicLab.Services.ProblemInstances.QAPSolution), true)]
-
-#endregion
-
-namespace HeuristicLab.Services.ProblemInstances
-{
-    #region Contexts
-    
-    /// <summary>
-    /// No Metadata Documentation available.
-    /// </summary>
-    public partial class ProblemInstancesEntities : ObjectContext
-    {
-        #region Constructors
-    
-        /// <summary>
-        /// Initializes a new ProblemInstancesEntities object using the connection string found in the 'ProblemInstancesEntities' section of the application configuration file.
-        /// </summary>
-        public ProblemInstancesEntities() : base("name=ProblemInstancesEntities", "ProblemInstancesEntities")
-        {
-            this.ContextOptions.LazyLoadingEnabled = true;
-            OnContextCreated();
-        }
-    
-        /// <summary>
-        /// Initialize a new ProblemInstancesEntities object.
-        /// </summary>
-        public ProblemInstancesEntities(string connectionString) : base(connectionString, "ProblemInstancesEntities")
-        {
-            this.ContextOptions.LazyLoadingEnabled = true;
-            OnContextCreated();
-        }
-    
-        /// <summary>
-        /// Initialize a new ProblemInstancesEntities object.
-        /// </summary>
-        public ProblemInstancesEntities(EntityConnection connection) : base(connection, "ProblemInstancesEntities")
-        {
-            this.ContextOptions.LazyLoadingEnabled = true;
-            OnContextCreated();
-        }
-    
-        #endregion
-    
-        #region Partial Methods
-    
-        partial void OnContextCreated();
-    
-        #endregion
-    
-        #region ObjectSet Properties
-    
-        /// <summary>
-        /// No Metadata Documentation available.
-        /// </summary>
-        public ObjectSet<QAPInstance> QAPInstances
-        {
-            get
-            {
-                if ((_QAPInstances == null))
-                {
-                    _QAPInstances = base.CreateObjectSet<QAPInstance>("QAPInstances");
-                }
-                return _QAPInstances;
-            }
-        }
-        private ObjectSet<QAPInstance> _QAPInstances;
-    
-        /// <summary>
-        /// No Metadata Documentation available.
-        /// </summary>
-        public ObjectSet<QAPSolution> QAPSolutions
-        {
-            get
-            {
-                if ((_QAPSolutions == null))
-                {
-                    _QAPSolutions = base.CreateObjectSet<QAPSolution>("QAPSolutions");
-                }
-                return _QAPSolutions;
-            }
-        }
-        private ObjectSet<QAPSolution> _QAPSolutions;
-
-        #endregion
-        #region AddTo Methods
-    
-        /// <summary>
-        /// Deprecated Method for adding a new object to the QAPInstances EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
-        /// </summary>
-        public void AddToQAPInstances(QAPInstance qAPInstance)
-        {
-            base.AddObject("QAPInstances", qAPInstance);
-        }
-    
-        /// <summary>
-        /// Deprecated Method for adding a new object to the QAPSolutions EntitySet. Consider using the .Add method of the associated ObjectSet&lt;T&gt; property instead.
-        /// </summary>
-        public void AddToQAPSolutions(QAPSolution qAPSolution)
-        {
-            base.AddObject("QAPSolutions", qAPSolution);
-        }
-
-        #endregion
-    }
-    
-
-    #endregion
-    
-    #region Entities
-    
-    /// <summary>
-    /// No Metadata Documentation available.
-    /// </summary>
-    [EdmEntityTypeAttribute(NamespaceName="ProblemInstancesModel", Name="QAPInstance")]
-    [Serializable()]
-    [DataContractAttribute(IsReference=true)]
-    public partial class QAPInstance : EntityObject
-    {
-        #region Factory Method
-    
-        /// <summary>
-        /// Create a new QAPInstance object.
-        /// </summary>
-        /// <param name="name">Initial value of the Name property.</param>
-        /// <param name="maximization">Initial value of the Maximization property.</param>
-        /// <param name="weights">Initial value of the Weights property.</param>
-        /// <param name="weightsHash">Initial value of the WeightsHash property.</param>
-        /// <param name="distances">Initial value of the Distances property.</param>
-        /// <param name="distancesHash">Initial value of the DistancesHash property.</param>
-        /// <param name="problemSize">Initial value of the ProblemSize property.</param>
-        public static QAPInstance CreateQAPInstance(global::System.String name, global::System.Boolean maximization, global::System.String weights, global::System.String weightsHash, global::System.String distances, global::System.String distancesHash, global::System.Int32 problemSize)
-        {
-            QAPInstance qAPInstance = new QAPInstance();
-            qAPInstance.Name = name;
-            qAPInstance.Maximization = maximization;
-            qAPInstance.Weights = weights;
-            qAPInstance.WeightsHash = weightsHash;
-            qAPInstance.Distances = distances;
-            qAPInstance.DistancesHash = distancesHash;
-            qAPInstance.ProblemSize = problemSize;
-            return qAPInstance;
-        }
-
-        #endregion
-        #region Primitive Properties
-    
-        /// <summary>
-        /// No Metadata Documentation available.
-        /// </summary>
-        [EdmScalarPropertyAttribute(EntityKeyProperty=true, IsNullable=false)]
-        [DataMemberAttribute()]
-        public global::System.String Name
-        {
-            get
-            {
-                return _Name;
-            }
-            set
-            {
-                if (_Name != value)
-                {
-                    OnNameChanging(value);
-                    ReportPropertyChanging("Name");
-                    _Name = StructuralObject.SetValidValue(value, false);
-                    ReportPropertyChanged("Name");
-                    OnNameChanged();
-                }
-            }
-        }
-        private global::System.String _Name;
-        partial void OnNameChanging(global::System.String value);
-        partial void OnNameChanged();
-    
-        /// <summary>
-        /// No Metadata Documentation available.
-        /// </summary>
-        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
-        [DataMemberAttribute()]
-        public global::System.String Description
-        {
-            get
-            {
-                return _Description;
-            }
-            set
-            {
-                OnDescriptionChanging(value);
-                ReportPropertyChanging("Description");
-                _Description = StructuralObject.SetValidValue(value, true);
-                ReportPropertyChanged("Description");
-                OnDescriptionChanged();
-            }
-        }
-        private global::System.String _Description;
-        partial void OnDescriptionChanging(global::System.String value);
-        partial void OnDescriptionChanged();
-    
-        /// <summary>
-        /// No Metadata Documentation available.
-        /// </summary>
-        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
-        [DataMemberAttribute()]
-        public global::System.Boolean Maximization
-        {
-            get
-            {
-                return _Maximization;
-            }
-            set
-            {
-                OnMaximizationChanging(value);
-                ReportPropertyChanging("Maximization");
-                _Maximization = StructuralObject.SetValidValue(value);
-                ReportPropertyChanged("Maximization");
-                OnMaximizationChanged();
-            }
-        }
-        private global::System.Boolean _Maximization;
-        partial void OnMaximizationChanging(global::System.Boolean value);
-        partial void OnMaximizationChanged();
-    
-        /// <summary>
-        /// No Metadata Documentation available.
-        /// </summary>
-        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
-        [DataMemberAttribute()]
-        public global::System.String Weights
-        {
-            get
-            {
-                return _Weights;
-            }
-            set
-            {
-                OnWeightsChanging(value);
-                ReportPropertyChanging("Weights");
-                _Weights = StructuralObject.SetValidValue(value, false);
-                ReportPropertyChanged("Weights");
-                OnWeightsChanged();
-            }
-        }
-        private global::System.String _Weights;
-        partial void OnWeightsChanging(global::System.String value);
-        partial void OnWeightsChanged();
-    
-        /// <summary>
-        /// No Metadata Documentation available.
-        /// </summary>
-        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
-        [DataMemberAttribute()]
-        public global::System.String WeightsHash
-        {
-            get
-            {
-                return _WeightsHash;
-            }
-            set
-            {
-                OnWeightsHashChanging(value);
-                ReportPropertyChanging("WeightsHash");
-                _WeightsHash = StructuralObject.SetValidValue(value, false);
-                ReportPropertyChanged("WeightsHash");
-                OnWeightsHashChanged();
-            }
-        }
-        private global::System.String _WeightsHash;
-        partial void OnWeightsHashChanging(global::System.String value);
-        partial void OnWeightsHashChanged();
-    
-        /// <summary>
-        /// No Metadata Documentation available.
-        /// </summary>
-        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
-        [DataMemberAttribute()]
-        public global::System.String Distances
-        {
-            get
-            {
-                return _Distances;
-            }
-            set
-            {
-                OnDistancesChanging(value);
-                ReportPropertyChanging("Distances");
-                _Distances = StructuralObject.SetValidValue(value, false);
-                ReportPropertyChanged("Distances");
-                OnDistancesChanged();
-            }
-        }
-        private global::System.String _Distances;
-        partial void OnDistancesChanging(global::System.String value);
-        partial void OnDistancesChanged();
-    
-        /// <summary>
-        /// No Metadata Documentation available.
-        /// </summary>
-        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
-        [DataMemberAttribute()]
-        public global::System.String DistancesHash
-        {
-            get
-            {
-                return _DistancesHash;
-            }
-            set
-            {
-                OnDistancesHashChanging(value);
-                ReportPropertyChanging("DistancesHash");
-                _DistancesHash = StructuralObject.SetValidValue(value, false);
-                ReportPropertyChanged("DistancesHash");
-                OnDistancesHashChanged();
-            }
-        }
-        private global::System.String _DistancesHash;
-        partial void OnDistancesHashChanging(global::System.String value);
-        partial void OnDistancesHashChanged();
-    
-        /// <summary>
-        /// No Metadata Documentation available.
-        /// </summary>
-        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
-        [DataMemberAttribute()]
-        public global::System.Int32 ProblemSize
-        {
-            get
-            {
-                return _ProblemSize;
-            }
-            set
-            {
-                OnProblemSizeChanging(value);
-                ReportPropertyChanging("ProblemSize");
-                _ProblemSize = StructuralObject.SetValidValue(value);
-                ReportPropertyChanged("ProblemSize");
-                OnProblemSizeChanged();
-            }
-        }
-        private global::System.Int32 _ProblemSize;
-        partial void OnProblemSizeChanging(global::System.Int32 value);
-        partial void OnProblemSizeChanged();
-
-        #endregion
-    
-        #region Navigation Properties
-    
-        /// <summary>
-        /// No Metadata Documentation available.
-        /// </summary>
-        [XmlIgnoreAttribute()]
-        [SoapIgnoreAttribute()]
-        [DataMemberAttribute()]
-        [EdmRelationshipNavigationPropertyAttribute("ProblemInstancesModel", "FK_QAPSolution_QAPInstance1", "QAPSolution")]
-        public EntityCollection<QAPSolution> Solutions
-        {
-            get
-            {
-                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedCollection<QAPSolution>("ProblemInstancesModel.FK_QAPSolution_QAPInstance1", "QAPSolution");
-            }
-            set
-            {
-                if ((value != null))
-                {
-                    ((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedCollection<QAPSolution>("ProblemInstancesModel.FK_QAPSolution_QAPInstance1", "QAPSolution", value);
-                }
-            }
-        }
-
-        #endregion
-    }
-    
-    /// <summary>
-    /// No Metadata Documentation available.
-    /// </summary>
-    [EdmEntityTypeAttribute(NamespaceName="ProblemInstancesModel", Name="QAPSolution")]
-    [Serializable()]
-    [DataContractAttribute(IsReference=true)]
-    public partial class QAPSolution : EntityObject
-    {
-        #region Factory Method
-    
-        /// <summary>
-        /// Create a new QAPSolution object.
-        /// </summary>
-        /// <param name="id">Initial value of the Id property.</param>
-        /// <param name="name">Initial value of the Name property.</param>
-        /// <param name="quality">Initial value of the Quality property.</param>
-        public static QAPSolution CreateQAPSolution(global::System.Int32 id, global::System.String name, global::System.Double quality)
-        {
-            QAPSolution qAPSolution = new QAPSolution();
-            qAPSolution.Id = id;
-            qAPSolution.Name = name;
-            qAPSolution.Quality = quality;
-            return qAPSolution;
-        }
-
-        #endregion
-        #region Primitive Properties
-    
-        /// <summary>
-        /// No Metadata Documentation available.
-        /// </summary>
-        [EdmScalarPropertyAttribute(EntityKeyProperty=true, IsNullable=false)]
-        [DataMemberAttribute()]
-        public global::System.Int32 Id
-        {
-            get
-            {
-                return _Id;
-            }
-            set
-            {
-                if (_Id != value)
-                {
-                    OnIdChanging(value);
-                    ReportPropertyChanging("Id");
-                    _Id = StructuralObject.SetValidValue(value);
-                    ReportPropertyChanged("Id");
-                    OnIdChanged();
-                }
-            }
-        }
-        private global::System.Int32 _Id;
-        partial void OnIdChanging(global::System.Int32 value);
-        partial void OnIdChanged();
-    
-        /// <summary>
-        /// No Metadata Documentation available.
-        /// </summary>
-        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
-        [DataMemberAttribute()]
-        public global::System.String Name
-        {
-            get
-            {
-                return _Name;
-            }
-            set
-            {
-                OnNameChanging(value);
-                ReportPropertyChanging("Name");
-                _Name = StructuralObject.SetValidValue(value, false);
-                ReportPropertyChanged("Name");
-                OnNameChanged();
-            }
-        }
-        private global::System.String _Name;
-        partial void OnNameChanging(global::System.String value);
-        partial void OnNameChanged();
-    
-        /// <summary>
-        /// No Metadata Documentation available.
-        /// </summary>
-        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
-        [DataMemberAttribute()]
-        public global::System.String Assignment
-        {
-            get
-            {
-                return _Assignment;
-            }
-            set
-            {
-                OnAssignmentChanging(value);
-                ReportPropertyChanging("Assignment");
-                _Assignment = StructuralObject.SetValidValue(value, true);
-                ReportPropertyChanged("Assignment");
-                OnAssignmentChanged();
-            }
-        }
-        private global::System.String _Assignment;
-        partial void OnAssignmentChanging(global::System.String value);
-        partial void OnAssignmentChanged();
-    
-        /// <summary>
-        /// No Metadata Documentation available.
-        /// </summary>
-        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=true)]
-        [DataMemberAttribute()]
-        public global::System.String AssignmentHash
-        {
-            get
-            {
-                return _AssignmentHash;
-            }
-            set
-            {
-                OnAssignmentHashChanging(value);
-                ReportPropertyChanging("AssignmentHash");
-                _AssignmentHash = StructuralObject.SetValidValue(value, true);
-                ReportPropertyChanged("AssignmentHash");
-                OnAssignmentHashChanged();
-            }
-        }
-        private global::System.String _AssignmentHash;
-        partial void OnAssignmentHashChanging(global::System.String value);
-        partial void OnAssignmentHashChanged();
-    
-        /// <summary>
-        /// No Metadata Documentation available.
-        /// </summary>
-        [EdmScalarPropertyAttribute(EntityKeyProperty=false, IsNullable=false)]
-        [DataMemberAttribute()]
-        public global::System.Double Quality
-        {
-            get
-            {
-                return _Quality;
-            }
-            set
-            {
-                OnQualityChanging(value);
-                ReportPropertyChanging("Quality");
-                _Quality = StructuralObject.SetValidValue(value);
-                ReportPropertyChanged("Quality");
-                OnQualityChanged();
-            }
-        }
-        private global::System.Double _Quality;
-        partial void OnQualityChanging(global::System.Double value);
-        partial void OnQualityChanged();
-
-        #endregion
-    
-        #region Navigation Properties
-    
-        /// <summary>
-        /// No Metadata Documentation available.
-        /// </summary>
-        [XmlIgnoreAttribute()]
-        [SoapIgnoreAttribute()]
-        [DataMemberAttribute()]
-        [EdmRelationshipNavigationPropertyAttribute("ProblemInstancesModel", "FK_QAPSolution_QAPInstance1", "QAPInstance")]
-        public QAPInstance Instance
-        {
-            get
-            {
-                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<QAPInstance>("ProblemInstancesModel.FK_QAPSolution_QAPInstance1", "QAPInstance").Value;
-            }
-            set
-            {
-                ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<QAPInstance>("ProblemInstancesModel.FK_QAPSolution_QAPInstance1", "QAPInstance").Value = value;
-            }
-        }
-        /// <summary>
-        /// No Metadata Documentation available.
-        /// </summary>
-        [BrowsableAttribute(false)]
-        [DataMemberAttribute()]
-        public EntityReference<QAPInstance> InstanceReference
-        {
-            get
-            {
-                return ((IEntityWithRelationships)this).RelationshipManager.GetRelatedReference<QAPInstance>("ProblemInstancesModel.FK_QAPSolution_QAPInstance1", "QAPInstance");
-            }
-            set
-            {
-                if ((value != null))
-                {
-                    ((IEntityWithRelationships)this).RelationshipManager.InitializeRelatedReference<QAPInstance>("ProblemInstancesModel.FK_QAPSolution_QAPInstance1", "QAPInstance", value);
-                }
-            }
-        }
-
-        #endregion
-    }
-
-    #endregion
-    
-}
Index: anches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/ProblemInstancesModel.edmx
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/ProblemInstancesModel.edmx	(revision 6779)
+++ 	(revision )
@@ -1,155 +1,0 @@
-﻿<?xml version="1.0" encoding="utf-8"?>
-<edmx:Edmx Version="2.0" xmlns:edmx="http://schemas.microsoft.com/ado/2008/10/edmx">
-  <!-- EF Runtime content -->
-  <edmx:Runtime>
-    <!-- SSDL content -->
-    <edmx:StorageModels>
-    <Schema Namespace="ProblemInstancesModel.Store" Alias="Self" Provider="System.Data.SqlClient" ProviderManifestToken="2008" xmlns:store="http://schemas.microsoft.com/ado/2007/12/edm/EntityStoreSchemaGenerator" xmlns="http://schemas.microsoft.com/ado/2009/02/edm/ssdl">
-        <EntityContainer Name="ProblemInstancesModelStoreContainer">
-          <EntitySet Name="QAPInstance" EntityType="ProblemInstancesModel.Store.QAPInstance" store:Type="Tables" Schema="dbo" />
-          <EntitySet Name="QAPSolution" EntityType="ProblemInstancesModel.Store.QAPSolution" store:Type="Tables" Schema="dbo" />
-          <AssociationSet Name="FK_QAPSolution_QAPInstance" Association="ProblemInstancesModel.Store.FK_QAPSolution_QAPInstance">
-            <End Role="QAPInstance" EntitySet="QAPInstance" />
-            <End Role="QAPSolution" EntitySet="QAPSolution" />
-          </AssociationSet>
-        </EntityContainer>
-        <EntityType Name="QAPInstance">
-          <Key>
-            <PropertyRef Name="Name" />
-          </Key>
-          <Property Name="Name" Type="nvarchar" Nullable="false" MaxLength="64" />
-          <Property Name="Description" Type="ntext" />
-          <Property Name="Maximization" Type="bit" Nullable="false" />
-          <Property Name="Weights" Type="varchar(max)" Nullable="false" />
-          <Property Name="WeightsHash" Type="char" Nullable="false" MaxLength="40" />
-          <Property Name="Distances" Type="varchar(max)" Nullable="false" />
-          <Property Name="DistancesHash" Type="char" Nullable="false" MaxLength="40" />
-          <Property Name="ProblemSize" Type="int" Nullable="false" />
-        </EntityType>
-        <EntityType Name="QAPSolution">
-          <Key>
-            <PropertyRef Name="Id" />
-          </Key>
-          <Property Name="Id" Type="int" Nullable="false" StoreGeneratedPattern="Identity" />
-          <Property Name="Name" Type="nvarchar" Nullable="false" MaxLength="64" />
-          <Property Name="Assignment" Type="text" />
-          <Property Name="AssignmentHash" Type="char" MaxLength="40" />
-          <Property Name="Quality" Type="float" Nullable="false" />
-        </EntityType>
-        <Association Name="FK_QAPSolution_QAPInstance">
-          <End Role="QAPInstance" Type="ProblemInstancesModel.Store.QAPInstance" Multiplicity="1">
-            <OnDelete Action="Cascade" />
-          </End>
-          <End Role="QAPSolution" Type="ProblemInstancesModel.Store.QAPSolution" Multiplicity="*" />
-          <ReferentialConstraint>
-            <Principal Role="QAPInstance">
-              <PropertyRef Name="Name" />
-            </Principal>
-            <Dependent Role="QAPSolution">
-              <PropertyRef Name="Name" />
-            </Dependent>
-          </ReferentialConstraint>
-        </Association>
-      </Schema></edmx:StorageModels>
-    <!-- CSDL content -->
-    <edmx:ConceptualModels>
-      <Schema Namespace="ProblemInstancesModel" Alias="Self" xmlns:annotation="http://schemas.microsoft.com/ado/2009/02/edm/annotation" xmlns="http://schemas.microsoft.com/ado/2008/09/edm">
-        <EntityContainer Name="ProblemInstancesEntities" annotation:LazyLoadingEnabled="true">
-          <EntitySet Name="QAPInstances" EntityType="ProblemInstancesModel.QAPInstance" />
-          <EntitySet Name="QAPSolutions" EntityType="ProblemInstancesModel.QAPSolution" />
-          <AssociationSet Name="FK_QAPSolution_QAPInstance1" Association="ProblemInstancesModel.FK_QAPSolution_QAPInstance1">
-            <End Role="QAPInstance" EntitySet="QAPInstances" />
-            <End Role="QAPSolution" EntitySet="QAPSolutions" />
-          </AssociationSet>
-        </EntityContainer>
-        <EntityType Name="QAPInstance">
-          <Key>
-            <PropertyRef Name="Name" />
-          </Key>
-          <Property Type="String" Name="Name" Nullable="false" MaxLength="64" FixedLength="false" Unicode="true" />
-          <Property Type="String" Name="Description" MaxLength="Max" FixedLength="false" Unicode="true" />
-          <Property Type="Boolean" Name="Maximization" Nullable="false" />
-          <Property Type="String" Name="Weights" Nullable="false" MaxLength="Max" FixedLength="false" Unicode="false" />
-          <Property Type="String" Name="WeightsHash" Nullable="false" MaxLength="40" FixedLength="true" Unicode="false" />
-          <Property Type="String" Name="Distances" Nullable="false" MaxLength="Max" FixedLength="false" Unicode="false" />
-          <Property Type="String" Name="DistancesHash" Nullable="false" MaxLength="40" FixedLength="true" Unicode="false" />
-          <NavigationProperty Name="Solutions" Relationship="ProblemInstancesModel.FK_QAPSolution_QAPInstance1" FromRole="QAPInstance" ToRole="QAPSolution" />
-          <Property Type="Int32" Name="ProblemSize" Nullable="false" />
-        </EntityType>
-        <EntityType Name="QAPSolution">
-          <Key>
-            <PropertyRef Name="Id" />
-          </Key>
-          <Property Type="Int32" Name="Id" Nullable="false" annotation:StoreGeneratedPattern="Identity" />
-          <Property Type="String" Name="Name" Nullable="false" MaxLength="64" FixedLength="false" Unicode="true" />
-          <Property Type="String" Name="Assignment" Nullable="true" MaxLength="Max" FixedLength="false" Unicode="false" />
-          <Property Type="String" Name="AssignmentHash" Nullable="true" MaxLength="40" FixedLength="true" Unicode="false" />
-          <Property Type="Double" Name="Quality" Nullable="false" />
-          <NavigationProperty Name="Instance" Relationship="ProblemInstancesModel.FK_QAPSolution_QAPInstance1" FromRole="QAPSolution" ToRole="QAPInstance" />
-        </EntityType>
-        <Association Name="FK_QAPSolution_QAPInstance1">
-          <End Type="ProblemInstancesModel.QAPInstance" Role="QAPInstance" Multiplicity="1" />
-          <End Type="ProblemInstancesModel.QAPSolution" Role="QAPSolution" Multiplicity="*" />
-          <ReferentialConstraint>
-            <Principal Role="QAPInstance">
-              <PropertyRef Name="Name" />
-            </Principal>
-            <Dependent Role="QAPSolution">
-              <PropertyRef Name="Name" />
-            </Dependent>
-          </ReferentialConstraint>
-        </Association>
-      </Schema>
-    </edmx:ConceptualModels>
-    <!-- C-S mapping content -->
-    <edmx:Mappings>
-      <Mapping Space="C-S" xmlns="http://schemas.microsoft.com/ado/2008/09/mapping/cs">
-        <EntityContainerMapping StorageEntityContainer="ProblemInstancesModelStoreContainer" CdmEntityContainer="ProblemInstancesEntities">
-          <EntitySetMapping Name="QAPInstances"><EntityTypeMapping TypeName="ProblemInstancesModel.QAPInstance"><MappingFragment StoreEntitySet="QAPInstance">
-            <ScalarProperty Name="ProblemSize" ColumnName="ProblemSize" />
-                <ScalarProperty Name="DistancesHash" ColumnName="DistancesHash" />
-                <ScalarProperty Name="Distances" ColumnName="Distances" />
-                <ScalarProperty Name="WeightsHash" ColumnName="WeightsHash" />
-                <ScalarProperty Name="Weights" ColumnName="Weights" />
-                <ScalarProperty Name="Maximization" ColumnName="Maximization" />
-                <ScalarProperty Name="Description" ColumnName="Description" />
-                <ScalarProperty Name="Name" ColumnName="Name" />
-              </MappingFragment></EntityTypeMapping></EntitySetMapping>
-          <EntitySetMapping Name="QAPSolutions"><EntityTypeMapping TypeName="ProblemInstancesModel.QAPSolution"><MappingFragment StoreEntitySet="QAPSolution">
-            <ScalarProperty Name="Quality" ColumnName="Quality" />
-                <ScalarProperty Name="AssignmentHash" ColumnName="AssignmentHash" />
-                <ScalarProperty Name="Assignment" ColumnName="Assignment" />
-                <ScalarProperty Name="Name" ColumnName="Name" />
-                <ScalarProperty Name="Id" ColumnName="Id" />
-              </MappingFragment></EntityTypeMapping></EntitySetMapping>
-        </EntityContainerMapping>
-      </Mapping>
-    </edmx:Mappings>
-  </edmx:Runtime>
-  <!-- EF Designer content (DO NOT EDIT MANUALLY BELOW HERE) -->
-  <Designer xmlns="http://schemas.microsoft.com/ado/2008/10/edmx">
-    <Connection>
-      <DesignerInfoPropertySet>
-        <DesignerProperty Name="MetadataArtifactProcessing" Value="EmbedInOutputAssembly" />
-      </DesignerInfoPropertySet>
-    </Connection>
-    <Options>
-      <DesignerInfoPropertySet>
-        <DesignerProperty Name="ValidateOnBuild" Value="true" />
-        <DesignerProperty Name="EnablePluralization" Value="False" />
-        <DesignerProperty Name="IncludeForeignKeysInModel" Value="True" />
-      </DesignerInfoPropertySet>
-    </Options>
-    <!-- Diagram content (shape and connector positions) -->
-    <Diagrams>
-      <Diagram Name="ProblemInstancesModel">
-        <EntityTypeShape EntityType="ProblemInstancesModel.QAPInstance" Width="1.5" PointX="0.75" PointY="1" Height="2.7494921874999996" IsExpanded="true" />
-        <EntityTypeShape EntityType="ProblemInstancesModel.QAPSolution" Width="1.5" PointX="3" PointY="1.25" Height="2.172587890625" IsExpanded="true" />
-        <AssociationConnector Association="ProblemInstancesModel.FK_QAPSolution_QAPInstance1" >
-          <ConnectorPoint PointX="2.25" PointY="2.3362939453125" />
-          <ConnectorPoint PointX="3" PointY="2.3362939453125" />
-        </AssociationConnector>
-      </Diagram>
-    </Diagrams>
-  </Designer>
-</edmx:Edmx>
Index: anches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/SimpleSerializationException.cs
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/SimpleSerializationException.cs	(revision 6779)
+++ 	(revision )
@@ -1,30 +1,0 @@
-﻿#region License Information
-/* HeuristicLab
- * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
- *
- * This file is part of HeuristicLab.
- *
- * HeuristicLab 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.
- *
- * HeuristicLab 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 HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
- */
-#endregion
-
-using System;
-
-namespace HeuristicLab.Services.ProblemInstances {
-  public class SimpleSerializationException : Exception {
-    public SimpleSerializationException() : base() { }
-    public SimpleSerializationException(string message) : base(message) { }
-    public SimpleSerializationException(string message, Exception innerException) : base(message, innerException) { }
-  }
-}
Index: anches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/SimpleSerializer.cs
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/SimpleSerializer.cs	(revision 6779)
+++ 	(revision )
@@ -1,166 +1,0 @@
-﻿#region License Information
-/* HeuristicLab
- * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
- *
- * This file is part of HeuristicLab.
- *
- * HeuristicLab 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.
- *
- * HeuristicLab 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 HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
- */
-#endregion
-
-using System;
-using System.Globalization;
-using System.Text;
-
-namespace HeuristicLab.Services.ProblemInstances {
-  public static class SimpleSerializer {
-    #region Double Matrix
-    public static string SerializeDoubleMatrix(double[][] matrix) {
-      StringBuilder builder = new StringBuilder();
-      int dim1 = matrix.Length;
-      int dim2 = matrix[0].Length;
-      builder.Append(dim1.ToString(CultureInfo.InvariantCulture.NumberFormat));
-      builder.Append(";");
-      builder.Append(dim2.ToString(CultureInfo.InvariantCulture.NumberFormat));
-      for (int i = 0; i < dim1; i++) {
-        for (int j = 0; j < dim2; j++) {
-          if (matrix[i].Length != dim2) throw new ArgumentException("ERROR jagged array is not a matrix!");
-          builder.Append(";" + matrix[i][j].ToString(CultureInfo.InvariantCulture.NumberFormat));
-        }
-      }
-      return builder.ToString();
-    }
-    public static string SerializeDoubleMatrix(double[,] matrix) {
-      StringBuilder builder = new StringBuilder();
-      int dim1 = matrix.GetLength(0);
-      int dim2 = matrix.GetLength(1);
-      builder.Append(dim1.ToString(CultureInfo.InvariantCulture.NumberFormat));
-      builder.Append(";");
-      builder.Append(dim2.ToString(CultureInfo.InvariantCulture.NumberFormat));
-      for (int i = 0; i < dim1; i++) {
-        for (int j = 0; j < dim2; j++) {
-          builder.Append(";" + matrix[i, j].ToString(CultureInfo.InvariantCulture.NumberFormat));
-        }
-      }
-      return builder.ToString();
-    }
-
-    public static double[][] DeserializeDoubleMatrix(string data) {
-      string[] tokens = data.Split(';');
-      int dim1 = int.Parse(tokens[0], CultureInfo.InvariantCulture.NumberFormat);
-      int dim2 = int.Parse(tokens[1], CultureInfo.InvariantCulture.NumberFormat);
-      if (tokens.Length != (dim1 * dim2) + 2) throw new SimpleSerializationException("ERROR: serialized data does not represent a matrix!");
-      double[][] result = new double[dim1][];
-      for (int i = 0; i < dim1; i++) {
-        result[i] = new double[dim2];
-        for (int j = 0; j < dim2; j++)
-          result[i][j] = double.Parse(tokens[i * dim1 + j + 2], CultureInfo.InvariantCulture.NumberFormat);
-      }
-      return result;
-    }
-    #endregion
-
-    #region Int Matrix
-    public static string SerializeIntMatrix(int[][] matrix) {
-      StringBuilder builder = new StringBuilder();
-      int dim1 = matrix.Length;
-      int dim2 = matrix[0].Length;
-      builder.Append(dim1.ToString(CultureInfo.InvariantCulture.NumberFormat));
-      builder.Append(";");
-      builder.Append(dim2.ToString(CultureInfo.InvariantCulture.NumberFormat));
-      for (int i = 0; i < dim1; i++) {
-        for (int j = 0; j < dim2; j++) {
-          if (matrix[i].Length != dim2) throw new ArgumentException("ERROR jagged array is not a matrix!");
-          builder.Append(";" + matrix[i][j].ToString(CultureInfo.InvariantCulture.NumberFormat));
-        }
-      }
-      return builder.ToString();
-    }
-    public static string SerializeIntMatrix(int[,] matrix) {
-      StringBuilder builder = new StringBuilder();
-      int dim1 = matrix.GetLength(0);
-      int dim2 = matrix.GetLength(1);
-      builder.Append(dim1.ToString(CultureInfo.InvariantCulture.NumberFormat));
-      builder.Append(";");
-      builder.Append(dim2.ToString(CultureInfo.InvariantCulture.NumberFormat));
-      for (int i = 0; i < dim1; i++) {
-        for (int j = 0; j < dim2; j++) {
-          builder.Append(";" + matrix[i, j].ToString(CultureInfo.InvariantCulture.NumberFormat));
-        }
-      }
-      return builder.ToString();
-    }
-
-    public static int[][] DeserializeIntMatrix(string data) {
-      string[] tokens = data.Split(';');
-      int dim1 = int.Parse(tokens[0], CultureInfo.InvariantCulture.NumberFormat);
-      int dim2 = int.Parse(tokens[1], CultureInfo.InvariantCulture.NumberFormat);
-      if (tokens.Length != (dim1 * dim2) + 2) throw new SimpleSerializationException("ERROR: serialized data does not represent a matrix!");
-      int[][] result = new int[dim1][];
-      for (int i = 0; i < dim1; i++) {
-        result[i] = new int[dim2];
-        for (int j = 0; j < dim2; j++)
-          result[i][j] = int.Parse(tokens[i * dim1 + j + 2], CultureInfo.InvariantCulture.NumberFormat);
-      }
-      return result;
-    }
-    #endregion
-
-    #region Double Array
-    public static string SerializeDoubleArray(double[] array) {
-      StringBuilder builder = new StringBuilder();
-      int dim1 = array.Length;
-      builder.Append(dim1.ToString(CultureInfo.InvariantCulture.NumberFormat));
-      builder.Append(";");
-      for (int i = 0; i < dim1; i++) {
-        builder.Append(";" + array[i].ToString(CultureInfo.InvariantCulture.NumberFormat));
-      }
-      return builder.ToString();
-    }
-
-    public static double[] DeserializeDoubleArray(string array) {
-      string[] tokens = array.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
-      int dim1 = int.Parse(tokens[0], CultureInfo.InvariantCulture.NumberFormat);
-      double[] result = new double[dim1];
-      for (int i = 0; i < dim1; i++) {
-        result[i] = double.Parse(tokens[i + 1], CultureInfo.InvariantCulture.NumberFormat);
-      }
-      return result;
-    }
-    #endregion
-
-    #region Int Array
-    public static string SerializeIntArray(int[] array) {
-      StringBuilder builder = new StringBuilder();
-      int dim1 = array.Length;
-      builder.Append(dim1.ToString(CultureInfo.InvariantCulture.NumberFormat));
-      builder.Append(";");
-      for (int i = 0; i < dim1; i++) {
-        builder.Append(";" + array[i].ToString(CultureInfo.InvariantCulture.NumberFormat));
-      }
-      return builder.ToString();
-    }
-
-    public static int[] DeserializeIntArray(string array) {
-      string[] tokens = array.Split(new char[] { ';' }, StringSplitOptions.RemoveEmptyEntries);
-      int dim1 = int.Parse(tokens[0], CultureInfo.InvariantCulture.NumberFormat);
-      int[] result = new int[dim1];
-      for (int i = 0; i < dim1; i++) {
-        result[i] = int.Parse(tokens[i + 1], CultureInfo.InvariantCulture.NumberFormat);
-      }
-      return result;
-    }
-    #endregion
-  }
-}
Index: anches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/Web.Debug.config
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/Web.Debug.config	(revision 6779)
+++ 	(revision )
@@ -1,7 +1,0 @@
-﻿<?xml version="1.0"?>
-
-<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
-
-<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
-  
-</configuration>
Index: anches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/Web.Release.config
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/Web.Release.config	(revision 6779)
+++ 	(revision )
@@ -1,14 +1,0 @@
-﻿<?xml version="1.0"?>
-
-<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
-
-<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
-
-  <system.web>
-    <compilation xdt:Transform="RemoveAttributes(debug)" />
-  </system.web>
-
-  <connectionStrings xdt:Transform="Replace">
-    <add name="ProblemInstancesEntities" connectionString="metadata=res://*/ProblemInstancesModel.csdl|res://*/ProblemInstancesModel.ssdl|res://*/ProblemInstancesModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=LOCALHOST;Initial Catalog=HeuristicLab.ProblemInstances;Integrated Security=True&quot;" providerName="System.Data.EntityClient" />
-  </connectionStrings>
-</configuration>
Index: anches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/Web.config
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab.Services.ProblemInstances/Web.config	(revision 6779)
+++ 	(revision )
@@ -1,30 +1,0 @@
-﻿<?xml version="1.0" encoding="utf-8"?>
-<configuration>
-  <system.web>
-    <compilation debug="true" targetFramework="4.0">
-      <assemblies>
-        <add assembly="System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
-      </assemblies>
-    </compilation>
-  </system.web>
-  <system.serviceModel>
-    <behaviors>
-      <serviceBehaviors>
-        <behavior>
-          <dataContractSerializer maxItemsInObjectGraph="2147483647" />
-          <!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment -->
-          <serviceMetadata httpGetEnabled="true" />
-          <!-- To receive exception details in faults for debugging purposes, set the value below to true.  Set to false before deployment to avoid disclosing exception information -->
-          <serviceDebug includeExceptionDetailInFaults="true" />
-        </behavior>
-      </serviceBehaviors>
-    </behaviors>
-    <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
-  </system.serviceModel>
-  <system.webServer>
-    <modules runAllManagedModulesForAllRequests="true" />
-  </system.webServer>
-  <connectionStrings>
-    <add name="ProblemInstancesEntities" connectionString="metadata=res://*/ProblemInstancesModel.csdl|res://*/ProblemInstancesModel.ssdl|res://*/ProblemInstancesModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=LOCALHOST\SQLEXPRESS;Initial Catalog=HeuristicLab.ProblemInstances;Integrated Security=True;Pooling=False;MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" />
-  </connectionStrings>
-</configuration>
Index: /branches/GeneralizedQAP/HeuristicLab/3.3/Tests/HeuristicLab-3.3.Tests.csproj
===================================================================
--- /branches/GeneralizedQAP/HeuristicLab/3.3/Tests/HeuristicLab-3.3.Tests.csproj	(revision 6779)
+++ /branches/GeneralizedQAP/HeuristicLab/3.3/Tests/HeuristicLab-3.3.Tests.csproj	(revision 6780)
@@ -143,8 +143,4 @@
   </ItemGroup>
   <ItemGroup>
-    <ProjectReference Include="..\..\..\HeuristicLab.Algorithms.DataAnalysis.Views\3.3\HeuristicLab.Algorithms.DataAnalysis.Views-3.3.csproj">
-      <Project>{C3E69936-0DB5-42A4-B1B4-12E9700B080E}</Project>
-      <Name>HeuristicLab.Algorithms.DataAnalysis.Views-3.3</Name>
-    </ProjectReference>
     <ProjectReference Include="..\..\..\HeuristicLab.Algorithms.DataAnalysis.Views\3.4\HeuristicLab.Algorithms.DataAnalysis.Views-3.4.csproj">
       <Project>{A2330DB0-413D-4424-B4E6-591118E2B9F8}</Project>
