Index: branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/AccessService.dbml
===================================================================
--- branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/AccessService.dbml	(revision 7619)
+++ branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/AccessService.dbml	(revision 7619)
@@ -0,0 +1,123 @@
+﻿<?xml version="1.0" encoding="utf-8"?><Database Name="HeuristicLab.ClientManagement" Class="AccessServiceDataContext" xmlns="http://schemas.microsoft.com/linqtosql/dbml/2007">
+  <Connection Mode="AppSettings" ConnectionString="Data Source=.;Initial Catalog=HeuristicLab.ClientManagement;Integrated Security=True" SettingsObjectName="HeuristicLab.Services.Access.DataAccess.Properties.Settings" SettingsPropertyName="HeuristicLab_ClientManagementConnectionString" Provider="System.Data.SqlClient" />
+  <Table Name="dbo.Resource" Member="Resources">
+    <Type Name="Resource" InheritanceCode="Resource" IsInheritanceDefault="true">
+      <Column Name="Id" AutoSync="OnInsert" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
+      <Column Name="Name" Type="System.String" DbType="NVarChar(MAX) NOT NULL" CanBeNull="false" />
+      <Column Name="Description" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="false" />
+      <Column Name="Type" Type="System.String" DbType="NVarChar(MAX) NOT NULL" CanBeNull="false" IsDiscriminator="true" />
+      <Association Name="Resource_ResourceResourceGroup" Member="ResourceResourceGroupsChilds" Storage="_ResourceResourceGroups" ThisKey="Id" OtherKey="ResourceGroupId" Type="ResourceResourceGroup" />
+      <Association Name="Resource_ResourceResourceGroup1" Member="ResourceResourceGroupsParents" Storage="_ResourceResourceGroups1" ThisKey="Id" OtherKey="ResourceId" Type="ResourceResourceGroup" />
+      <Association Name="Resource_ClientLog" Member="ClientLogs" ThisKey="Id" OtherKey="ResourceId" Type="ClientLog" />
+      <Association Name="Resource_ResourcePlugin" Member="ResourcePlugins" ThisKey="Id" OtherKey="ResourceId" Type="ResourcePlugin" />
+      <Type Name="Client" InheritanceCode="Client">
+        <Column Name="HeuristicLabVersion" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="false" />
+        <Column Name="MemorySize" Type="System.Int32" DbType="Int" CanBeNull="true" />
+        <Column Name="Timestamp" Type="System.DateTime" DbType="DateTime" CanBeNull="true" />
+        <Column Name="NumberOfCores" Type="System.Int32" DbType="Int" CanBeNull="true" />
+        <Column Name="ProcessorType" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
+        <Column Name="ClientTypeId" Type="System.Guid" DbType="UniqueIdentifier" CanBeNull="true" />
+        <Column Name="OperatingSystemId" Type="System.Guid" DbType="UniqueIdentifier" CanBeNull="true" />
+        <Column Name="ClientConfigurationId" Type="System.Guid" DbType="UniqueIdentifier" CanBeNull="true" />
+        <Column Name="CountryId" Type="System.Guid" DbType="UniqueIdentifier" CanBeNull="true" />
+        <Column Name="PerformanceValue" Type="System.Double" DbType="real" CanBeNull="true" />
+        <Association Name="ClientType_Client" Member="ClientType" ThisKey="ClientTypeId" OtherKey="Id" Type="ClientType" IsForeignKey="true" />
+        <Association Name="OperatingSystem_Client" Member="OperatingSystem" ThisKey="OperatingSystemId" OtherKey="Id" Type="OperatingSystem" IsForeignKey="true" />
+        <Association Name="Country_Client" Member="Country" ThisKey="CountryId" OtherKey="Id" Type="Country" IsForeignKey="true" />
+        <Association Name="ClientConfiguration_Client" Member="ClientConfiguration" ThisKey="ClientConfigurationId" OtherKey="Id" Type="ClientConfiguration" IsForeignKey="true" />
+      </Type>
+      <Type Name="ClientGroup" InheritanceCode="ClientGroup" />
+    </Type>
+  </Table>
+  <Table Name="dbo.ResourceResourceGroup" Member="ResourceResourceGroups">
+    <Type Name="ResourceResourceGroup">
+      <Column Name="ResourceId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
+      <Column Name="ResourceGroupId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
+      <Association Name="Resource_ResourceResourceGroup" Member="ParentResource" Storage="_Resource" ThisKey="ResourceGroupId" OtherKey="Id" Type="Resource" IsForeignKey="true" />
+      <Association Name="Resource_ResourceResourceGroup1" Member="Resource" Storage="_Resource1" ThisKey="ResourceId" OtherKey="Id" Type="Resource" IsForeignKey="true" />
+    </Type>
+  </Table>
+  <Table Name="dbo.ClientLog" Member="ClientLogs">
+    <Type Name="ClientLog">
+      <Column Name="Timestamp" Type="System.DateTime" DbType="DateTime NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
+      <Column Name="ResourceId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
+      <Column Name="Message" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
+      <Association Name="Resource_ClientLog" Member="Resource" ThisKey="ResourceId" OtherKey="Id" Type="Resource" IsForeignKey="true" />
+    </Type>
+  </Table>
+  <Table Name="dbo.ClientError" Member="ClientErrors">
+    <Type Name="ClientError">
+      <Column Name="Id" AutoSync="Never" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
+      <Column Name="Timestamp" Type="System.DateTime" DbType="DateTime NOT NULL" CanBeNull="false" />
+      <Column Name="Exception" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
+      <Column Name="UserComment" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
+      <Column Name="ConfigDump" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
+      <Column Name="ClientId" Type="System.Guid" DbType="UniqueIdentifier" CanBeNull="true" />
+      <Column Name="UserId" Type="System.Guid" DbType="UniqueIdentifier" CanBeNull="true" />
+    </Type>
+  </Table>
+  <Table Name="dbo.UserGroup" Member="UserGroupBases">
+    <Type Name="UserGroupBase" InheritanceCode="UserGroupBase" IsInheritanceDefault="true">
+      <Column Name="Id" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
+      <Column Name="Type" Type="System.String" DbType="NVarChar(10) NOT NULL" CanBeNull="false" IsDiscriminator="true" />
+      <Association Name="UserGroupBase_UserGroupUserGroup" Member="UserGroupUserGroupsChilds" Storage="_UserGroupUserGroups" ThisKey="Id" OtherKey="UserGroupId" Type="UserGroupUserGroup" />
+      <Association Name="UserGroupBase_UserGroupUserGroup1" Member="UserGroupUserGroupsParents" Storage="_UserGroupUserGroups1" ThisKey="Id" OtherKey="UserGroupUserGroupId" Type="UserGroupUserGroup" />
+      <Type Name="User" InheritanceCode="User">
+        <Column Name="FullName" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
+      </Type>
+      <Type Name="UserGroup" InheritanceCode="UserGroup">
+        <Column Name="Name" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
+      </Type>
+    </Type>
+  </Table>
+  <Table Name="dbo.ClientType" Member="ClientTypes">
+    <Type Name="ClientType">
+      <Column Name="Id" AutoSync="Never" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
+      <Column Name="Name" Type="System.String" DbType="NVarChar(MAX) NOT NULL" CanBeNull="false" />
+    </Type>
+  </Table>
+  <Table Name="dbo.OperatingSystem" Member="OperatingSystems">
+    <Type Name="OperatingSystem">
+      <Column Name="Id" AutoSync="Never" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
+      <Column Name="Name" Type="System.String" DbType="NVarChar(MAX) NOT NULL" CanBeNull="false" />
+    </Type>
+  </Table>
+  <Table Name="dbo.Country" Member="Countries">
+    <Type Name="Country">
+      <Column Name="Id" AutoSync="Never" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
+      <Column Name="Name" Type="System.String" DbType="NVarChar(MAX) NOT NULL" CanBeNull="false" />
+    </Type>
+  </Table>
+  <Table Name="dbo.ClientConfiguration" Member="ClientConfigurations">
+    <Type Name="ClientConfiguration">
+      <Column Name="Id" AutoSync="Never" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
+      <Column Name="Hash" Type="System.String" DbType="NVarChar(MAX) NOT NULL" CanBeNull="false" />
+      <Column Name="Description" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
+    </Type>
+  </Table>
+  <Table Name="dbo.Plugin" Member="Plugins">
+    <Type Name="Plugin">
+      <Column Name="Id" AutoSync="Never" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
+      <Column Name="Name" Type="System.String" DbType="NVarChar(MAX) NOT NULL" CanBeNull="false" />
+      <Column Name="StrongName" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
+      <Column Name="Version" Type="System.String" DbType="NVarChar(20) NOT NULL" CanBeNull="false" />
+      <Association Name="Plugin_ResourcePlugin" Member="ResourcePlugins" ThisKey="Id" OtherKey="PluginId" Type="ResourcePlugin" />
+    </Type>
+  </Table>
+  <Table Name="dbo.ResourcePlugin" Member="ResourcePlugins">
+    <Type Name="ResourcePlugin">
+      <Column Name="ResourceId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
+      <Column Name="PluginId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
+      <Association Name="Plugin_ResourcePlugin" Member="Plugin" ThisKey="PluginId" OtherKey="Id" Type="Plugin" IsForeignKey="true" />
+      <Association Name="Resource_ResourcePlugin" Member="Resource" ThisKey="ResourceId" OtherKey="Id" Type="Resource" IsForeignKey="true" />
+    </Type>
+  </Table>
+  <Table Name="dbo.UserGroupUserGroup" Member="UserGroupUserGroups">
+    <Type Name="UserGroupUserGroup">
+      <Column Name="UserGroupId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
+      <Column Name="UserGroupUserGroupId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
+      <Association Name="UserGroupBase_UserGroupUserGroup" Member="UserGroup" ThisKey="UserGroupId" OtherKey="Id" Type="UserGroupBase" IsForeignKey="true" />
+      <Association Name="UserGroupBase_UserGroupUserGroup1" Member="UserGroupBase" ThisKey="UserGroupUserGroupId" OtherKey="Id" Type="UserGroupBase" IsForeignKey="true" />
+    </Type>
+  </Table>
+</Database>
Index: branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/AccessService.dbml.layout
===================================================================
--- branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/AccessService.dbml.layout	(revision 7619)
+++ branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/AccessService.dbml.layout	(revision 7619)
@@ -0,0 +1,203 @@
+﻿<?xml version="1.0" encoding="utf-8"?>
+<ordesignerObjectsDiagram dslVersion="1.0.0.0" absoluteBounds="0, 0, 13, 8.5" name="ClientManagement">
+  <DataContextMoniker Name="/AccessServiceDataContext" />
+  <nestedChildShapes>
+    <classShape Id="20c6e07e-aa12-43dc-87d6-dae5bf173da4" absoluteBounds="4.625, 0.5, 2, 1.5785953776041666">
+      <DataClassMoniker Name="/AccessServiceDataContext/Resource" />
+      <nestedChildShapes>
+        <elementListCompartment Id="f2c7fc66-3f50-4f7e-8f46-8f4bfeea7af2" absoluteBounds="4.64, 0.96, 1.9700000000000002, 1.0185953776041665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
+      </nestedChildShapes>
+    </classShape>
+    <classShape Id="6355c88b-386a-4bd7-8aa0-144305c33372" absoluteBounds="7.75, 0.5, 2, 1.1939925130208333">
+      <DataClassMoniker Name="/AccessServiceDataContext/ResourceResourceGroup" />
+      <nestedChildShapes>
+        <elementListCompartment Id="d88684ee-600b-4867-9de2-dfbfba71f34b" absoluteBounds="7.7650000000000006, 0.96, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
+      </nestedChildShapes>
+    </classShape>
+    <associationConnector edgePoints="[(6.625 : 1.09699625651042); (7.75 : 1.09699625651042)]" fixedFrom="NotFixed" fixedTo="NotFixed">
+      <AssociationMoniker Name="/AccessServiceDataContext/Resource/Resource_ResourceResourceGroup" />
+      <nodes>
+        <classShapeMoniker Id="20c6e07e-aa12-43dc-87d6-dae5bf173da4" />
+        <classShapeMoniker Id="6355c88b-386a-4bd7-8aa0-144305c33372" />
+      </nodes>
+    </associationConnector>
+    <associationConnector edgePoints="[(6.625 : 0.735998128255208); (7.75 : 0.735998128255208)]" fixedFrom="NotFixed" fixedTo="NotFixed">
+      <AssociationMoniker Name="/AccessServiceDataContext/Resource/Resource_ResourceResourceGroup1" />
+      <nodes>
+        <classShapeMoniker Id="20c6e07e-aa12-43dc-87d6-dae5bf173da4" />
+        <classShapeMoniker Id="6355c88b-386a-4bd7-8aa0-144305c33372" />
+      </nodes>
+    </associationConnector>
+    <classShape Id="c964402f-99b7-4355-b9ad-279a2a7cf692" absoluteBounds="3.75, 2.5, 2, 2.7324039713541666">
+      <DataClassMoniker Name="/AccessServiceDataContext/Client" />
+      <nestedChildShapes>
+        <elementListCompartment Id="8d16a96c-4ba3-4e2b-b267-0cfe5bb174f1" absoluteBounds="3.7650000000000006, 2.96, 1.9700000000000002, 2.1724039713541665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
+      </nestedChildShapes>
+    </classShape>
+    <classShape Id="1e545126-1016-4d14-ad12-0bfdb7ec53b7" absoluteBounds="6, 2.5, 2, 0.8093896484375">
+      <DataClassMoniker Name="/AccessServiceDataContext/ClientGroup" />
+      <nestedChildShapes>
+        <elementListCompartment Id="d7b60f1c-6c2e-4c1e-a3a1-4b5802d227bb" absoluteBounds="6, 2.5, 0.125, 0.2493896484375" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
+      </nestedChildShapes>
+    </classShape>
+    <inheritanceConnector edgePoints="[(5.625 : 2.07859537760417); (5.625 : 2.26); (4.75 : 2.26); (4.75 : 2.5)]" fixedFrom="NotFixed" fixedTo="NotFixed" TargetRelationshipDomainClassId="7a7fe09e-e9ef-4b01-9ff3-bde95e827b62">
+      <nodes>
+        <classShapeMoniker Id="20c6e07e-aa12-43dc-87d6-dae5bf173da4" />
+        <classShapeMoniker Id="c964402f-99b7-4355-b9ad-279a2a7cf692" />
+      </nodes>
+    </inheritanceConnector>
+    <inheritanceConnector edgePoints="[(5.625 : 2.07859537760417); (5.625 : 2.26); (5.79166666666667 : 2.26 : JumpStart); (5.98958333333333 : 2.26 : JumpEnd); (7 : 2.26); (7 : 2.5)]" fixedFrom="NotFixed" fixedTo="NotFixed" TargetRelationshipDomainClassId="7a7fe09e-e9ef-4b01-9ff3-bde95e827b62">
+      <nodes>
+        <classShapeMoniker Id="20c6e07e-aa12-43dc-87d6-dae5bf173da4" />
+        <classShapeMoniker Id="1e545126-1016-4d14-ad12-0bfdb7ec53b7" />
+      </nodes>
+    </inheritanceConnector>
+    <classShape Id="0cc124dd-2ee8-42b6-b176-cd3b22d9eabd" absoluteBounds="8.125, 2, 2, 1.3862939453125">
+      <DataClassMoniker Name="/AccessServiceDataContext/ClientLog" />
+      <nestedChildShapes>
+        <elementListCompartment Id="adf1d053-cb27-4891-bb3c-f3849497b953" absoluteBounds="8.14, 2.46, 1.9700000000000002, 0.8262939453125" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
+      </nestedChildShapes>
+    </classShape>
+    <associationConnector edgePoints="[(5.875 : 2.07859537760417); (5.875 : 2.34875); (8.125 : 2.34875)]" fixedFrom="NotFixed" fixedTo="NotFixed">
+      <AssociationMoniker Name="/AccessServiceDataContext/Resource/Resource_ClientLog" />
+      <nodes>
+        <classShapeMoniker Id="20c6e07e-aa12-43dc-87d6-dae5bf173da4" />
+        <classShapeMoniker Id="0cc124dd-2ee8-42b6-b176-cd3b22d9eabd" />
+      </nodes>
+    </associationConnector>
+    <classShape Id="5e8ae5e1-4026-47e5-91fb-9607de024aad" absoluteBounds="10.375, 0.5, 2, 2.1554996744791666">
+      <DataClassMoniker Name="/AccessServiceDataContext/ClientError" />
+      <nestedChildShapes>
+        <elementListCompartment Id="0aee0bb0-fc18-4610-ab43-c4cf50ce4228" absoluteBounds="10.39, 0.96, 1.9700000000000002, 1.5954996744791665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
+      </nestedChildShapes>
+    </classShape>
+    <classShape Id="452ce94a-9bd2-4968-9a5f-a0ab1dba6b2e" absoluteBounds="7.875, 3.875, 2, 1.1939925130208327">
+      <DataClassMoniker Name="/AccessServiceDataContext/UserGroupBase" />
+      <nestedChildShapes>
+        <elementListCompartment Id="4a562596-7b72-43d1-9790-93d049a0a0a8" absoluteBounds="7.8900000000000006, 4.335, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
+      </nestedChildShapes>
+    </classShape>
+    <classShape Id="38891c77-8166-44c9-8dd5-da45900c45f3" absoluteBounds="0.5, 0.5, 2, 1.1939925130208333">
+      <DataClassMoniker Name="/AccessServiceDataContext/ClientType" />
+      <nestedChildShapes>
+        <elementListCompartment Id="3db061b5-e614-4933-9550-32a85dc3278c" absoluteBounds="0.515, 0.96, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
+      </nestedChildShapes>
+    </classShape>
+    <classShape Id="cb6a29ca-7ef1-4721-9108-b64558f282a6" absoluteBounds="0.5, 1.75, 2, 1.1939925130208333">
+      <DataClassMoniker Name="/AccessServiceDataContext/OperatingSystem" />
+      <nestedChildShapes>
+        <elementListCompartment Id="d155707b-11d5-4dbf-9890-697e6940e697" absoluteBounds="0.51500000000000012, 2.21, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
+      </nestedChildShapes>
+    </classShape>
+    <classShape Id="c7dfcb39-11e2-47ec-8a48-4e41e2901893" absoluteBounds="0.5, 3, 2, 1.1939925130208333">
+      <DataClassMoniker Name="/AccessServiceDataContext/Country" />
+      <nestedChildShapes>
+        <elementListCompartment Id="257ba077-a1cc-43ac-b4a4-e88df1d32e31" absoluteBounds="0.51500000000000012, 3.46, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
+      </nestedChildShapes>
+    </classShape>
+    <classShape Id="3aef9298-1092-45fa-bf96-8dd25d61c2f8" absoluteBounds="0.5, 4.25, 2, 1.3862939453125">
+      <DataClassMoniker Name="/AccessServiceDataContext/ClientConfiguration" />
+      <nestedChildShapes>
+        <elementListCompartment Id="6444a95d-bd46-4977-9ee8-0e5dd3e297d1" absoluteBounds="0.51500000000000012, 4.71, 1.9700000000000002, 0.8262939453125" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
+      </nestedChildShapes>
+    </classShape>
+    <classShape Id="f8d63089-5458-4918-a098-5d9f2c3ac629" absoluteBounds="0.5, 5.75, 2, 1.5785953776041666">
+      <DataClassMoniker Name="/AccessServiceDataContext/Plugin" />
+      <nestedChildShapes>
+        <elementListCompartment Id="490da272-92c4-484c-823e-97f3d08d72a3" absoluteBounds="0.51500000000000012, 6.21, 1.9700000000000002, 1.0185953776041665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
+      </nestedChildShapes>
+    </classShape>
+    <classShape Id="9f63fd2b-4410-4817-99d4-648466eacddd" absoluteBounds="3.625, 5.625, 2, 1.1939925130208333">
+      <DataClassMoniker Name="/AccessServiceDataContext/ResourcePlugin" />
+      <nestedChildShapes>
+        <elementListCompartment Id="de5c9495-8c9c-43b6-9b59-4a187db3e607" absoluteBounds="3.64, 6.085, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
+      </nestedChildShapes>
+    </classShape>
+    <associationConnector edgePoints="[(2.5 : 6.28449625651042); (3.625 : 6.28449625651042)]" fixedFrom="NotFixed" fixedTo="NotFixed">
+      <AssociationMoniker Name="/AccessServiceDataContext/Plugin/Plugin_ResourcePlugin" />
+      <nodes>
+        <classShapeMoniker Id="f8d63089-5458-4918-a098-5d9f2c3ac629" />
+        <classShapeMoniker Id="9f63fd2b-4410-4817-99d4-648466eacddd" />
+      </nodes>
+    </associationConnector>
+    <associationConnector edgePoints="[(5.90625 : 2.07859537760417); (5.90625 : 6.22199625651042); (5.625 : 6.22199625651042)]" fixedFrom="NotFixed" fixedTo="NotFixed">
+      <AssociationMoniker Name="/AccessServiceDataContext/Resource/Resource_ResourcePlugin" />
+      <nodes>
+        <classShapeMoniker Id="20c6e07e-aa12-43dc-87d6-dae5bf173da4" />
+        <classShapeMoniker Id="9f63fd2b-4410-4817-99d4-648466eacddd" />
+      </nodes>
+    </associationConnector>
+    <classShape Id="289f3b5e-1167-4ac9-8241-cfda58670cf7" absoluteBounds="6.625, 5.875, 2, 1.0016910807291666">
+      <DataClassMoniker Name="/AccessServiceDataContext/User" />
+      <nestedChildShapes>
+        <elementListCompartment Id="c43044c1-4b3a-413d-9c9b-38926f40719a" absoluteBounds="6.64, 6.335, 1.9700000000000002, 0.44169108072916669" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
+      </nestedChildShapes>
+    </classShape>
+    <classShape Id="62262fbd-3de1-47dd-bbdd-05e982e88e29" absoluteBounds="10.75, 4, 2, 1.1939925130208333">
+      <DataClassMoniker Name="/AccessServiceDataContext/UserGroupUserGroup" />
+      <nestedChildShapes>
+        <elementListCompartment Id="6da6d908-1d40-4f5e-a6c9-8ee8edcccc10" absoluteBounds="10.765, 4.46, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
+      </nestedChildShapes>
+    </classShape>
+    <classShape Id="722ccaeb-f35a-4a76-8d2f-850633dc444a" absoluteBounds="9.25, 5.875, 2, 1.0016910807291666">
+      <DataClassMoniker Name="/AccessServiceDataContext/UserGroup" />
+      <nestedChildShapes>
+        <elementListCompartment Id="b7d51ef7-026b-4cef-9a32-1cf3a63828d5" absoluteBounds="9.265, 6.335, 1.9700000000000002, 0.44169108072916669" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
+      </nestedChildShapes>
+    </classShape>
+    <inheritanceConnector edgePoints="[(8.875 : 5.06899251302083); (8.875 : 5.5); (7.625 : 5.5); (7.625 : 5.875)]" fixedFrom="NotFixed" fixedTo="NotFixed" TargetRelationshipDomainClassId="7a7fe09e-e9ef-4b01-9ff3-bde95e827b62">
+      <nodes>
+        <classShapeMoniker Id="452ce94a-9bd2-4968-9a5f-a0ab1dba6b2e" />
+        <classShapeMoniker Id="289f3b5e-1167-4ac9-8241-cfda58670cf7" />
+      </nodes>
+    </inheritanceConnector>
+    <inheritanceConnector edgePoints="[(8.875 : 5.06899251302083); (8.875 : 5.5); (10.25 : 5.5); (10.25 : 5.875)]" fixedFrom="NotFixed" fixedTo="NotFixed" TargetRelationshipDomainClassId="7a7fe09e-e9ef-4b01-9ff3-bde95e827b62">
+      <nodes>
+        <classShapeMoniker Id="452ce94a-9bd2-4968-9a5f-a0ab1dba6b2e" />
+        <classShapeMoniker Id="722ccaeb-f35a-4a76-8d2f-850633dc444a" />
+      </nodes>
+    </inheritanceConnector>
+    <associationConnector edgePoints="[(9.875 : 4.53449625651042); (10.75 : 4.53449625651042)]" fixedFrom="NotFixed" fixedTo="NotFixed">
+      <AssociationMoniker Name="/AccessServiceDataContext/UserGroupBase/UserGroupBase_UserGroupUserGroup" />
+      <nodes>
+        <classShapeMoniker Id="452ce94a-9bd2-4968-9a5f-a0ab1dba6b2e" />
+        <classShapeMoniker Id="62262fbd-3de1-47dd-bbdd-05e982e88e29" />
+      </nodes>
+    </associationConnector>
+    <associationConnector edgePoints="[(9.875 : 4.20474812825521); (10.75 : 4.20474812825521)]" fixedFrom="NotFixed" fixedTo="NotFixed">
+      <AssociationMoniker Name="/AccessServiceDataContext/UserGroupBase/UserGroupBase_UserGroupUserGroup1" />
+      <nodes>
+        <classShapeMoniker Id="452ce94a-9bd2-4968-9a5f-a0ab1dba6b2e" />
+        <classShapeMoniker Id="62262fbd-3de1-47dd-bbdd-05e982e88e29" />
+      </nodes>
+    </associationConnector>
+    <associationConnector edgePoints="[(2.5 : 1.69399251302083); (2.875 : 2.06899251302083); (2.875 : 4.12102376302084); (3.75 : 4.12102376302084)]" fixedFrom="NotFixed" fixedTo="NotFixed">
+      <AssociationMoniker Name="/AccessServiceDataContext/ClientType/ClientType_Client" />
+      <nodes>
+        <classShapeMoniker Id="38891c77-8166-44c9-8dd5-da45900c45f3" />
+        <classShapeMoniker Id="c964402f-99b7-4355-b9ad-279a2a7cf692" />
+      </nodes>
+    </associationConnector>
+    <associationConnector edgePoints="[(2.5 : 2.72199625651042); (3.75 : 2.72199625651042)]" fixedFrom="NotFixed" fixedTo="NotFixed">
+      <AssociationMoniker Name="/AccessServiceDataContext/OperatingSystem/OperatingSystem_Client" />
+      <nodes>
+        <classShapeMoniker Id="cb6a29ca-7ef1-4721-9108-b64558f282a6" />
+        <classShapeMoniker Id="c964402f-99b7-4355-b9ad-279a2a7cf692" />
+      </nodes>
+    </associationConnector>
+    <associationConnector edgePoints="[(2.5 : 3.49801188151042); (3.75 : 3.49801188151042)]" fixedFrom="NotFixed" fixedTo="NotFixed">
+      <AssociationMoniker Name="/AccessServiceDataContext/Country/Country_Client" />
+      <nodes>
+        <classShapeMoniker Id="c7dfcb39-11e2-47ec-8a48-4e41e2901893" />
+        <classShapeMoniker Id="c964402f-99b7-4355-b9ad-279a2a7cf692" />
+      </nodes>
+    </associationConnector>
+    <associationConnector edgePoints="[(2.5 : 4.74120198567708); (3.75 : 4.74120198567708)]" fixedFrom="NotFixed" fixedTo="NotFixed">
+      <AssociationMoniker Name="/AccessServiceDataContext/ClientConfiguration/ClientConfiguration_Client" />
+      <nodes>
+        <classShapeMoniker Id="3aef9298-1092-45fa-bf96-8dd25d61c2f8" />
+        <classShapeMoniker Id="c964402f-99b7-4355-b9ad-279a2a7cf692" />
+      </nodes>
+    </associationConnector>
+  </nestedChildShapes>
+</ordesignerObjectsDiagram>
Index: branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/AccessService.designer.cs
===================================================================
--- branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/AccessService.designer.cs	(revision 7619)
+++ branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/AccessService.designer.cs	(revision 7619)
@@ -0,0 +1,2431 @@
+﻿#pragma warning disable 1591
+//------------------------------------------------------------------------------
+// <auto-generated>
+//     This code was generated by a tool.
+//     Runtime Version:4.0.30319.530
+//
+//     Changes to this file may cause incorrect behavior and will be lost if
+//     the code is regenerated.
+// </auto-generated>
+//------------------------------------------------------------------------------
+
+namespace HeuristicLab.Services.Access.DataAccess
+{
+	using System.Data.Linq;
+	using System.Data.Linq.Mapping;
+	using System.Data;
+	using System.Collections.Generic;
+	using System.Reflection;
+	using System.Linq;
+	using System.Linq.Expressions;
+	using System.ComponentModel;
+	using System;
+	
+	
+	[global::System.Data.Linq.Mapping.DatabaseAttribute(Name="HeuristicLab.ClientManagement")]
+	public partial class AccessServiceDataContext : System.Data.Linq.DataContext
+	{
+		
+		private static System.Data.Linq.Mapping.MappingSource mappingSource = new AttributeMappingSource();
+		
+    #region Extensibility Method Definitions
+    partial void OnCreated();
+    partial void InsertResource(Resource instance);
+    partial void UpdateResource(Resource instance);
+    partial void DeleteResource(Resource instance);
+    partial void InsertResourceResourceGroup(ResourceResourceGroup instance);
+    partial void UpdateResourceResourceGroup(ResourceResourceGroup instance);
+    partial void DeleteResourceResourceGroup(ResourceResourceGroup instance);
+    partial void InsertClientLog(ClientLog instance);
+    partial void UpdateClientLog(ClientLog instance);
+    partial void DeleteClientLog(ClientLog instance);
+    partial void InsertClientError(ClientError instance);
+    partial void UpdateClientError(ClientError instance);
+    partial void DeleteClientError(ClientError instance);
+    partial void InsertUserGroupBase(UserGroupBase instance);
+    partial void UpdateUserGroupBase(UserGroupBase instance);
+    partial void DeleteUserGroupBase(UserGroupBase instance);
+    partial void InsertClientType(ClientType instance);
+    partial void UpdateClientType(ClientType instance);
+    partial void DeleteClientType(ClientType instance);
+    partial void InsertOperatingSystem(OperatingSystem instance);
+    partial void UpdateOperatingSystem(OperatingSystem instance);
+    partial void DeleteOperatingSystem(OperatingSystem instance);
+    partial void InsertCountry(Country instance);
+    partial void UpdateCountry(Country instance);
+    partial void DeleteCountry(Country instance);
+    partial void InsertClientConfiguration(ClientConfiguration instance);
+    partial void UpdateClientConfiguration(ClientConfiguration instance);
+    partial void DeleteClientConfiguration(ClientConfiguration instance);
+    partial void InsertPlugin(Plugin instance);
+    partial void UpdatePlugin(Plugin instance);
+    partial void DeletePlugin(Plugin instance);
+    partial void InsertResourcePlugin(ResourcePlugin instance);
+    partial void UpdateResourcePlugin(ResourcePlugin instance);
+    partial void DeleteResourcePlugin(ResourcePlugin instance);
+    partial void InsertUserGroupUserGroup(UserGroupUserGroup instance);
+    partial void UpdateUserGroupUserGroup(UserGroupUserGroup instance);
+    partial void DeleteUserGroupUserGroup(UserGroupUserGroup instance);
+    #endregion
+		
+		public AccessServiceDataContext() : 
+				base(global::HeuristicLab.Services.Access.DataAccess.Properties.Settings.Default.HeuristicLab_ClientManagementConnectionString, mappingSource)
+		{
+			OnCreated();
+		}
+		
+		public AccessServiceDataContext(string connection) : 
+				base(connection, mappingSource)
+		{
+			OnCreated();
+		}
+		
+		public AccessServiceDataContext(System.Data.IDbConnection connection) : 
+				base(connection, mappingSource)
+		{
+			OnCreated();
+		}
+		
+		public AccessServiceDataContext(string connection, System.Data.Linq.Mapping.MappingSource mappingSource) : 
+				base(connection, mappingSource)
+		{
+			OnCreated();
+		}
+		
+		public AccessServiceDataContext(System.Data.IDbConnection connection, System.Data.Linq.Mapping.MappingSource mappingSource) : 
+				base(connection, mappingSource)
+		{
+			OnCreated();
+		}
+		
+		public System.Data.Linq.Table<Resource> Resources
+		{
+			get
+			{
+				return this.GetTable<Resource>();
+			}
+		}
+		
+		public System.Data.Linq.Table<ResourceResourceGroup> ResourceResourceGroups
+		{
+			get
+			{
+				return this.GetTable<ResourceResourceGroup>();
+			}
+		}
+		
+		public System.Data.Linq.Table<ClientLog> ClientLogs
+		{
+			get
+			{
+				return this.GetTable<ClientLog>();
+			}
+		}
+		
+		public System.Data.Linq.Table<ClientError> ClientErrors
+		{
+			get
+			{
+				return this.GetTable<ClientError>();
+			}
+		}
+		
+		public System.Data.Linq.Table<UserGroupBase> UserGroupBases
+		{
+			get
+			{
+				return this.GetTable<UserGroupBase>();
+			}
+		}
+		
+		public System.Data.Linq.Table<ClientType> ClientTypes
+		{
+			get
+			{
+				return this.GetTable<ClientType>();
+			}
+		}
+		
+		public System.Data.Linq.Table<OperatingSystem> OperatingSystems
+		{
+			get
+			{
+				return this.GetTable<OperatingSystem>();
+			}
+		}
+		
+		public System.Data.Linq.Table<Country> Countries
+		{
+			get
+			{
+				return this.GetTable<Country>();
+			}
+		}
+		
+		public System.Data.Linq.Table<ClientConfiguration> ClientConfigurations
+		{
+			get
+			{
+				return this.GetTable<ClientConfiguration>();
+			}
+		}
+		
+		public System.Data.Linq.Table<Plugin> Plugins
+		{
+			get
+			{
+				return this.GetTable<Plugin>();
+			}
+		}
+		
+		public System.Data.Linq.Table<ResourcePlugin> ResourcePlugins
+		{
+			get
+			{
+				return this.GetTable<ResourcePlugin>();
+			}
+		}
+		
+		public System.Data.Linq.Table<UserGroupUserGroup> UserGroupUserGroups
+		{
+			get
+			{
+				return this.GetTable<UserGroupUserGroup>();
+			}
+		}
+	}
+	
+	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Resource")]
+	[global::System.Data.Linq.Mapping.InheritanceMappingAttribute(Code="Resource", Type=typeof(Resource), IsDefault=true)]
+	[global::System.Data.Linq.Mapping.InheritanceMappingAttribute(Code="Client", Type=typeof(Client))]
+	[global::System.Data.Linq.Mapping.InheritanceMappingAttribute(Code="ClientGroup", Type=typeof(ClientGroup))]
+	public partial class Resource : INotifyPropertyChanging, INotifyPropertyChanged
+	{
+		
+		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
+		
+		private System.Guid _Id;
+		
+		private string _Name;
+		
+		private string _Description;
+		
+		private string _Type;
+		
+		private EntitySet<ResourceResourceGroup> _ResourceResourceGroups;
+		
+		private EntitySet<ResourceResourceGroup> _ResourceResourceGroups1;
+		
+		private EntitySet<ClientLog> _ClientLogs;
+		
+		private EntitySet<ResourcePlugin> _ResourcePlugins;
+		
+    #region Extensibility Method Definitions
+    partial void OnLoaded();
+    partial void OnValidate(System.Data.Linq.ChangeAction action);
+    partial void OnCreated();
+    partial void OnIdChanging(System.Guid value);
+    partial void OnIdChanged();
+    partial void OnNameChanging(string value);
+    partial void OnNameChanged();
+    partial void OnDescriptionChanging(string value);
+    partial void OnDescriptionChanged();
+    partial void OnTypeChanging(string value);
+    partial void OnTypeChanged();
+    #endregion
+		
+		public Resource()
+		{
+			this._ResourceResourceGroups = new EntitySet<ResourceResourceGroup>(new Action<ResourceResourceGroup>(this.attach_ResourceResourceGroups), new Action<ResourceResourceGroup>(this.detach_ResourceResourceGroups));
+			this._ResourceResourceGroups1 = new EntitySet<ResourceResourceGroup>(new Action<ResourceResourceGroup>(this.attach_ResourceResourceGroups1), new Action<ResourceResourceGroup>(this.detach_ResourceResourceGroups1));
+			this._ClientLogs = new EntitySet<ClientLog>(new Action<ClientLog>(this.attach_ClientLogs), new Action<ClientLog>(this.detach_ClientLogs));
+			this._ResourcePlugins = new EntitySet<ResourcePlugin>(new Action<ResourcePlugin>(this.attach_ResourcePlugins), new Action<ResourcePlugin>(this.detach_ResourcePlugins));
+			OnCreated();
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", AutoSync=AutoSync.OnInsert, DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
+		public System.Guid Id
+		{
+			get
+			{
+				return this._Id;
+			}
+			set
+			{
+				if ((this._Id != value))
+				{
+					this.OnIdChanging(value);
+					this.SendPropertyChanging();
+					this._Id = value;
+					this.SendPropertyChanged("Id");
+					this.OnIdChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(MAX) NOT NULL", CanBeNull=false)]
+		public string Name
+		{
+			get
+			{
+				return this._Name;
+			}
+			set
+			{
+				if ((this._Name != value))
+				{
+					this.OnNameChanging(value);
+					this.SendPropertyChanging();
+					this._Name = value;
+					this.SendPropertyChanged("Name");
+					this.OnNameChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Description", DbType="NVarChar(MAX)", CanBeNull=false)]
+		public string Description
+		{
+			get
+			{
+				return this._Description;
+			}
+			set
+			{
+				if ((this._Description != value))
+				{
+					this.OnDescriptionChanging(value);
+					this.SendPropertyChanging();
+					this._Description = value;
+					this.SendPropertyChanged("Description");
+					this.OnDescriptionChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Type", DbType="NVarChar(MAX) NOT NULL", CanBeNull=false, IsDiscriminator=true)]
+		public string Type
+		{
+			get
+			{
+				return this._Type;
+			}
+			set
+			{
+				if ((this._Type != value))
+				{
+					this.OnTypeChanging(value);
+					this.SendPropertyChanging();
+					this._Type = value;
+					this.SendPropertyChanged("Type");
+					this.OnTypeChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="Resource_ResourceResourceGroup", Storage="_ResourceResourceGroups", ThisKey="Id", OtherKey="ResourceGroupId")]
+		public EntitySet<ResourceResourceGroup> ResourceResourceGroupsChilds
+		{
+			get
+			{
+				return this._ResourceResourceGroups;
+			}
+			set
+			{
+				this._ResourceResourceGroups.Assign(value);
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="Resource_ResourceResourceGroup1", Storage="_ResourceResourceGroups1", ThisKey="Id", OtherKey="ResourceId")]
+		public EntitySet<ResourceResourceGroup> ResourceResourceGroupsParents
+		{
+			get
+			{
+				return this._ResourceResourceGroups1;
+			}
+			set
+			{
+				this._ResourceResourceGroups1.Assign(value);
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="Resource_ClientLog", Storage="_ClientLogs", ThisKey="Id", OtherKey="ResourceId")]
+		public EntitySet<ClientLog> ClientLogs
+		{
+			get
+			{
+				return this._ClientLogs;
+			}
+			set
+			{
+				this._ClientLogs.Assign(value);
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="Resource_ResourcePlugin", Storage="_ResourcePlugins", ThisKey="Id", OtherKey="ResourceId")]
+		public EntitySet<ResourcePlugin> ResourcePlugins
+		{
+			get
+			{
+				return this._ResourcePlugins;
+			}
+			set
+			{
+				this._ResourcePlugins.Assign(value);
+			}
+		}
+		
+		public event PropertyChangingEventHandler PropertyChanging;
+		
+		public event PropertyChangedEventHandler PropertyChanged;
+		
+		protected virtual void SendPropertyChanging()
+		{
+			if ((this.PropertyChanging != null))
+			{
+				this.PropertyChanging(this, emptyChangingEventArgs);
+			}
+		}
+		
+		protected virtual void SendPropertyChanged(String propertyName)
+		{
+			if ((this.PropertyChanged != null))
+			{
+				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
+			}
+		}
+		
+		private void attach_ResourceResourceGroups(ResourceResourceGroup entity)
+		{
+			this.SendPropertyChanging();
+			entity.ParentResource = this;
+		}
+		
+		private void detach_ResourceResourceGroups(ResourceResourceGroup entity)
+		{
+			this.SendPropertyChanging();
+			entity.ParentResource = null;
+		}
+		
+		private void attach_ResourceResourceGroups1(ResourceResourceGroup entity)
+		{
+			this.SendPropertyChanging();
+			entity.Resource = this;
+		}
+		
+		private void detach_ResourceResourceGroups1(ResourceResourceGroup entity)
+		{
+			this.SendPropertyChanging();
+			entity.Resource = null;
+		}
+		
+		private void attach_ClientLogs(ClientLog entity)
+		{
+			this.SendPropertyChanging();
+			entity.Resource = this;
+		}
+		
+		private void detach_ClientLogs(ClientLog entity)
+		{
+			this.SendPropertyChanging();
+			entity.Resource = null;
+		}
+		
+		private void attach_ResourcePlugins(ResourcePlugin entity)
+		{
+			this.SendPropertyChanging();
+			entity.Resource = this;
+		}
+		
+		private void detach_ResourcePlugins(ResourcePlugin entity)
+		{
+			this.SendPropertyChanging();
+			entity.Resource = null;
+		}
+	}
+	
+	public partial class Client : Resource
+	{
+		
+		private string _HeuristicLabVersion;
+		
+		private System.Nullable<int> _MemorySize;
+		
+		private System.Nullable<System.DateTime> _Timestamp;
+		
+		private System.Nullable<int> _NumberOfCores;
+		
+		private string _ProcessorType;
+		
+		private System.Nullable<System.Guid> _ClientTypeId;
+		
+		private System.Nullable<System.Guid> _OperatingSystemId;
+		
+		private System.Nullable<System.Guid> _ClientConfigurationId;
+		
+		private System.Nullable<System.Guid> _CountryId;
+		
+		private System.Nullable<double> _PerformanceValue;
+		
+		private EntityRef<ClientType> _ClientType;
+		
+		private EntityRef<OperatingSystem> _OperatingSystem;
+		
+		private EntityRef<Country> _Country;
+		
+		private EntityRef<ClientConfiguration> _ClientConfiguration;
+		
+    #region Extensibility Method Definitions
+    partial void OnLoaded();
+    partial void OnValidate(System.Data.Linq.ChangeAction action);
+    partial void OnCreated();
+    partial void OnHeuristicLabVersionChanging(string value);
+    partial void OnHeuristicLabVersionChanged();
+    partial void OnMemorySizeChanging(System.Nullable<int> value);
+    partial void OnMemorySizeChanged();
+    partial void OnTimestampChanging(System.Nullable<System.DateTime> value);
+    partial void OnTimestampChanged();
+    partial void OnNumberOfCoresChanging(System.Nullable<int> value);
+    partial void OnNumberOfCoresChanged();
+    partial void OnProcessorTypeChanging(string value);
+    partial void OnProcessorTypeChanged();
+    partial void OnClientTypeIdChanging(System.Nullable<System.Guid> value);
+    partial void OnClientTypeIdChanged();
+    partial void OnOperatingSystemIdChanging(System.Nullable<System.Guid> value);
+    partial void OnOperatingSystemIdChanged();
+    partial void OnClientConfigurationIdChanging(System.Nullable<System.Guid> value);
+    partial void OnClientConfigurationIdChanged();
+    partial void OnCountryIdChanging(System.Nullable<System.Guid> value);
+    partial void OnCountryIdChanged();
+    partial void OnPerformanceValueChanging(System.Nullable<double> value);
+    partial void OnPerformanceValueChanged();
+    #endregion
+		
+		public Client()
+		{
+			this._ClientType = default(EntityRef<ClientType>);
+			this._OperatingSystem = default(EntityRef<OperatingSystem>);
+			this._Country = default(EntityRef<Country>);
+			this._ClientConfiguration = default(EntityRef<ClientConfiguration>);
+			OnCreated();
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_HeuristicLabVersion", DbType="NVarChar(MAX)", CanBeNull=false)]
+		public string HeuristicLabVersion
+		{
+			get
+			{
+				return this._HeuristicLabVersion;
+			}
+			set
+			{
+				if ((this._HeuristicLabVersion != value))
+				{
+					this.OnHeuristicLabVersionChanging(value);
+					this.SendPropertyChanging();
+					this._HeuristicLabVersion = value;
+					this.SendPropertyChanged("HeuristicLabVersion");
+					this.OnHeuristicLabVersionChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_MemorySize", DbType="Int")]
+		public System.Nullable<int> MemorySize
+		{
+			get
+			{
+				return this._MemorySize;
+			}
+			set
+			{
+				if ((this._MemorySize != value))
+				{
+					this.OnMemorySizeChanging(value);
+					this.SendPropertyChanging();
+					this._MemorySize = value;
+					this.SendPropertyChanged("MemorySize");
+					this.OnMemorySizeChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Timestamp", DbType="DateTime")]
+		public System.Nullable<System.DateTime> Timestamp
+		{
+			get
+			{
+				return this._Timestamp;
+			}
+			set
+			{
+				if ((this._Timestamp != value))
+				{
+					this.OnTimestampChanging(value);
+					this.SendPropertyChanging();
+					this._Timestamp = value;
+					this.SendPropertyChanged("Timestamp");
+					this.OnTimestampChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_NumberOfCores", DbType="Int")]
+		public System.Nullable<int> NumberOfCores
+		{
+			get
+			{
+				return this._NumberOfCores;
+			}
+			set
+			{
+				if ((this._NumberOfCores != value))
+				{
+					this.OnNumberOfCoresChanging(value);
+					this.SendPropertyChanging();
+					this._NumberOfCores = value;
+					this.SendPropertyChanged("NumberOfCores");
+					this.OnNumberOfCoresChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProcessorType", DbType="NVarChar(MAX)")]
+		public string ProcessorType
+		{
+			get
+			{
+				return this._ProcessorType;
+			}
+			set
+			{
+				if ((this._ProcessorType != value))
+				{
+					this.OnProcessorTypeChanging(value);
+					this.SendPropertyChanging();
+					this._ProcessorType = value;
+					this.SendPropertyChanged("ProcessorType");
+					this.OnProcessorTypeChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ClientTypeId", DbType="UniqueIdentifier")]
+		public System.Nullable<System.Guid> ClientTypeId
+		{
+			get
+			{
+				return this._ClientTypeId;
+			}
+			set
+			{
+				if ((this._ClientTypeId != value))
+				{
+					if (this._ClientType.HasLoadedOrAssignedValue)
+					{
+						throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
+					}
+					this.OnClientTypeIdChanging(value);
+					this.SendPropertyChanging();
+					this._ClientTypeId = value;
+					this.SendPropertyChanged("ClientTypeId");
+					this.OnClientTypeIdChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_OperatingSystemId", DbType="UniqueIdentifier")]
+		public System.Nullable<System.Guid> OperatingSystemId
+		{
+			get
+			{
+				return this._OperatingSystemId;
+			}
+			set
+			{
+				if ((this._OperatingSystemId != value))
+				{
+					if (this._OperatingSystem.HasLoadedOrAssignedValue)
+					{
+						throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
+					}
+					this.OnOperatingSystemIdChanging(value);
+					this.SendPropertyChanging();
+					this._OperatingSystemId = value;
+					this.SendPropertyChanged("OperatingSystemId");
+					this.OnOperatingSystemIdChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ClientConfigurationId", DbType="UniqueIdentifier")]
+		public System.Nullable<System.Guid> ClientConfigurationId
+		{
+			get
+			{
+				return this._ClientConfigurationId;
+			}
+			set
+			{
+				if ((this._ClientConfigurationId != value))
+				{
+					if (this._ClientConfiguration.HasLoadedOrAssignedValue)
+					{
+						throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
+					}
+					this.OnClientConfigurationIdChanging(value);
+					this.SendPropertyChanging();
+					this._ClientConfigurationId = value;
+					this.SendPropertyChanged("ClientConfigurationId");
+					this.OnClientConfigurationIdChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CountryId", DbType="UniqueIdentifier")]
+		public System.Nullable<System.Guid> CountryId
+		{
+			get
+			{
+				return this._CountryId;
+			}
+			set
+			{
+				if ((this._CountryId != value))
+				{
+					if (this._Country.HasLoadedOrAssignedValue)
+					{
+						throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
+					}
+					this.OnCountryIdChanging(value);
+					this.SendPropertyChanging();
+					this._CountryId = value;
+					this.SendPropertyChanged("CountryId");
+					this.OnCountryIdChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PerformanceValue", DbType="real")]
+		public System.Nullable<double> PerformanceValue
+		{
+			get
+			{
+				return this._PerformanceValue;
+			}
+			set
+			{
+				if ((this._PerformanceValue != value))
+				{
+					this.OnPerformanceValueChanging(value);
+					this.SendPropertyChanging();
+					this._PerformanceValue = value;
+					this.SendPropertyChanged("PerformanceValue");
+					this.OnPerformanceValueChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="ClientType_Client", Storage="_ClientType", ThisKey="ClientTypeId", OtherKey="Id", IsForeignKey=true)]
+		public ClientType ClientType
+		{
+			get
+			{
+				return this._ClientType.Entity;
+			}
+			set
+			{
+				if ((this._ClientType.Entity != value))
+				{
+					this.SendPropertyChanging();
+					this._ClientType.Entity = value;
+					this.SendPropertyChanged("ClientType");
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="OperatingSystem_Client", Storage="_OperatingSystem", ThisKey="OperatingSystemId", OtherKey="Id", IsForeignKey=true)]
+		public OperatingSystem OperatingSystem
+		{
+			get
+			{
+				return this._OperatingSystem.Entity;
+			}
+			set
+			{
+				if ((this._OperatingSystem.Entity != value))
+				{
+					this.SendPropertyChanging();
+					this._OperatingSystem.Entity = value;
+					this.SendPropertyChanged("OperatingSystem");
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="Country_Client", Storage="_Country", ThisKey="CountryId", OtherKey="Id", IsForeignKey=true)]
+		public Country Country
+		{
+			get
+			{
+				return this._Country.Entity;
+			}
+			set
+			{
+				if ((this._Country.Entity != value))
+				{
+					this.SendPropertyChanging();
+					this._Country.Entity = value;
+					this.SendPropertyChanged("Country");
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="ClientConfiguration_Client", Storage="_ClientConfiguration", ThisKey="ClientConfigurationId", OtherKey="Id", IsForeignKey=true)]
+		public ClientConfiguration ClientConfiguration
+		{
+			get
+			{
+				return this._ClientConfiguration.Entity;
+			}
+			set
+			{
+				if ((this._ClientConfiguration.Entity != value))
+				{
+					this.SendPropertyChanging();
+					this._ClientConfiguration.Entity = value;
+					this.SendPropertyChanged("ClientConfiguration");
+				}
+			}
+		}
+	}
+	
+	public partial class ClientGroup : Resource
+	{
+		
+    #region Extensibility Method Definitions
+    partial void OnLoaded();
+    partial void OnValidate(System.Data.Linq.ChangeAction action);
+    partial void OnCreated();
+    #endregion
+		
+		public ClientGroup()
+		{
+			OnCreated();
+		}
+	}
+	
+	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.ResourceResourceGroup")]
+	public partial class ResourceResourceGroup : INotifyPropertyChanging, INotifyPropertyChanged
+	{
+		
+		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
+		
+		private System.Guid _ResourceId;
+		
+		private System.Guid _ResourceGroupId;
+		
+		private EntityRef<Resource> _Resource;
+		
+		private EntityRef<Resource> _Resource1;
+		
+    #region Extensibility Method Definitions
+    partial void OnLoaded();
+    partial void OnValidate(System.Data.Linq.ChangeAction action);
+    partial void OnCreated();
+    partial void OnResourceIdChanging(System.Guid value);
+    partial void OnResourceIdChanged();
+    partial void OnResourceGroupIdChanging(System.Guid value);
+    partial void OnResourceGroupIdChanged();
+    #endregion
+		
+		public ResourceResourceGroup()
+		{
+			this._Resource = default(EntityRef<Resource>);
+			this._Resource1 = default(EntityRef<Resource>);
+			OnCreated();
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResourceId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
+		public System.Guid ResourceId
+		{
+			get
+			{
+				return this._ResourceId;
+			}
+			set
+			{
+				if ((this._ResourceId != value))
+				{
+					if (this._Resource1.HasLoadedOrAssignedValue)
+					{
+						throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
+					}
+					this.OnResourceIdChanging(value);
+					this.SendPropertyChanging();
+					this._ResourceId = value;
+					this.SendPropertyChanged("ResourceId");
+					this.OnResourceIdChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResourceGroupId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
+		public System.Guid ResourceGroupId
+		{
+			get
+			{
+				return this._ResourceGroupId;
+			}
+			set
+			{
+				if ((this._ResourceGroupId != value))
+				{
+					if (this._Resource.HasLoadedOrAssignedValue)
+					{
+						throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
+					}
+					this.OnResourceGroupIdChanging(value);
+					this.SendPropertyChanging();
+					this._ResourceGroupId = value;
+					this.SendPropertyChanged("ResourceGroupId");
+					this.OnResourceGroupIdChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="Resource_ResourceResourceGroup", Storage="_Resource", ThisKey="ResourceGroupId", OtherKey="Id", IsForeignKey=true)]
+		public Resource ParentResource
+		{
+			get
+			{
+				return this._Resource.Entity;
+			}
+			set
+			{
+				Resource previousValue = this._Resource.Entity;
+				if (((previousValue != value) 
+							|| (this._Resource.HasLoadedOrAssignedValue == false)))
+				{
+					this.SendPropertyChanging();
+					if ((previousValue != null))
+					{
+						this._Resource.Entity = null;
+						previousValue.ResourceResourceGroupsChilds.Remove(this);
+					}
+					this._Resource.Entity = value;
+					if ((value != null))
+					{
+						value.ResourceResourceGroupsChilds.Add(this);
+						this._ResourceGroupId = value.Id;
+					}
+					else
+					{
+						this._ResourceGroupId = default(System.Guid);
+					}
+					this.SendPropertyChanged("ParentResource");
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="Resource_ResourceResourceGroup1", Storage="_Resource1", ThisKey="ResourceId", OtherKey="Id", IsForeignKey=true)]
+		public Resource Resource
+		{
+			get
+			{
+				return this._Resource1.Entity;
+			}
+			set
+			{
+				Resource previousValue = this._Resource1.Entity;
+				if (((previousValue != value) 
+							|| (this._Resource1.HasLoadedOrAssignedValue == false)))
+				{
+					this.SendPropertyChanging();
+					if ((previousValue != null))
+					{
+						this._Resource1.Entity = null;
+						previousValue.ResourceResourceGroupsParents.Remove(this);
+					}
+					this._Resource1.Entity = value;
+					if ((value != null))
+					{
+						value.ResourceResourceGroupsParents.Add(this);
+						this._ResourceId = value.Id;
+					}
+					else
+					{
+						this._ResourceId = default(System.Guid);
+					}
+					this.SendPropertyChanged("Resource");
+				}
+			}
+		}
+		
+		public event PropertyChangingEventHandler PropertyChanging;
+		
+		public event PropertyChangedEventHandler PropertyChanged;
+		
+		protected virtual void SendPropertyChanging()
+		{
+			if ((this.PropertyChanging != null))
+			{
+				this.PropertyChanging(this, emptyChangingEventArgs);
+			}
+		}
+		
+		protected virtual void SendPropertyChanged(String propertyName)
+		{
+			if ((this.PropertyChanged != null))
+			{
+				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
+			}
+		}
+	}
+	
+	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.ClientLog")]
+	public partial class ClientLog : INotifyPropertyChanging, INotifyPropertyChanged
+	{
+		
+		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
+		
+		private System.DateTime _Timestamp;
+		
+		private System.Guid _ResourceId;
+		
+		private string _Message;
+		
+		private EntityRef<Resource> _Resource;
+		
+    #region Extensibility Method Definitions
+    partial void OnLoaded();
+    partial void OnValidate(System.Data.Linq.ChangeAction action);
+    partial void OnCreated();
+    partial void OnTimestampChanging(System.DateTime value);
+    partial void OnTimestampChanged();
+    partial void OnResourceIdChanging(System.Guid value);
+    partial void OnResourceIdChanged();
+    partial void OnMessageChanging(string value);
+    partial void OnMessageChanged();
+    #endregion
+		
+		public ClientLog()
+		{
+			this._Resource = default(EntityRef<Resource>);
+			OnCreated();
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Timestamp", DbType="DateTime NOT NULL", IsPrimaryKey=true)]
+		public System.DateTime Timestamp
+		{
+			get
+			{
+				return this._Timestamp;
+			}
+			set
+			{
+				if ((this._Timestamp != value))
+				{
+					this.OnTimestampChanging(value);
+					this.SendPropertyChanging();
+					this._Timestamp = value;
+					this.SendPropertyChanged("Timestamp");
+					this.OnTimestampChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResourceId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
+		public System.Guid ResourceId
+		{
+			get
+			{
+				return this._ResourceId;
+			}
+			set
+			{
+				if ((this._ResourceId != value))
+				{
+					if (this._Resource.HasLoadedOrAssignedValue)
+					{
+						throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
+					}
+					this.OnResourceIdChanging(value);
+					this.SendPropertyChanging();
+					this._ResourceId = value;
+					this.SendPropertyChanged("ResourceId");
+					this.OnResourceIdChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Message", DbType="NVarChar(MAX)")]
+		public string Message
+		{
+			get
+			{
+				return this._Message;
+			}
+			set
+			{
+				if ((this._Message != value))
+				{
+					this.OnMessageChanging(value);
+					this.SendPropertyChanging();
+					this._Message = value;
+					this.SendPropertyChanged("Message");
+					this.OnMessageChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="Resource_ClientLog", Storage="_Resource", ThisKey="ResourceId", OtherKey="Id", IsForeignKey=true)]
+		public Resource Resource
+		{
+			get
+			{
+				return this._Resource.Entity;
+			}
+			set
+			{
+				Resource previousValue = this._Resource.Entity;
+				if (((previousValue != value) 
+							|| (this._Resource.HasLoadedOrAssignedValue == false)))
+				{
+					this.SendPropertyChanging();
+					if ((previousValue != null))
+					{
+						this._Resource.Entity = null;
+						previousValue.ClientLogs.Remove(this);
+					}
+					this._Resource.Entity = value;
+					if ((value != null))
+					{
+						value.ClientLogs.Add(this);
+						this._ResourceId = value.Id;
+					}
+					else
+					{
+						this._ResourceId = default(System.Guid);
+					}
+					this.SendPropertyChanged("Resource");
+				}
+			}
+		}
+		
+		public event PropertyChangingEventHandler PropertyChanging;
+		
+		public event PropertyChangedEventHandler PropertyChanged;
+		
+		protected virtual void SendPropertyChanging()
+		{
+			if ((this.PropertyChanging != null))
+			{
+				this.PropertyChanging(this, emptyChangingEventArgs);
+			}
+		}
+		
+		protected virtual void SendPropertyChanged(String propertyName)
+		{
+			if ((this.PropertyChanged != null))
+			{
+				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
+			}
+		}
+	}
+	
+	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.ClientError")]
+	public partial class ClientError : INotifyPropertyChanging, INotifyPropertyChanged
+	{
+		
+		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
+		
+		private System.Guid _Id;
+		
+		private System.DateTime _Timestamp;
+		
+		private string _Exception;
+		
+		private string _UserComment;
+		
+		private string _ConfigDump;
+		
+		private System.Nullable<System.Guid> _ClientId;
+		
+		private System.Nullable<System.Guid> _UserId;
+		
+    #region Extensibility Method Definitions
+    partial void OnLoaded();
+    partial void OnValidate(System.Data.Linq.ChangeAction action);
+    partial void OnCreated();
+    partial void OnIdChanging(System.Guid value);
+    partial void OnIdChanged();
+    partial void OnTimestampChanging(System.DateTime value);
+    partial void OnTimestampChanged();
+    partial void OnExceptionChanging(string value);
+    partial void OnExceptionChanged();
+    partial void OnUserCommentChanging(string value);
+    partial void OnUserCommentChanged();
+    partial void OnConfigDumpChanging(string value);
+    partial void OnConfigDumpChanged();
+    partial void OnClientIdChanging(System.Nullable<System.Guid> value);
+    partial void OnClientIdChanged();
+    partial void OnUserIdChanging(System.Nullable<System.Guid> value);
+    partial void OnUserIdChanged();
+    #endregion
+		
+		public ClientError()
+		{
+			OnCreated();
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
+		public System.Guid Id
+		{
+			get
+			{
+				return this._Id;
+			}
+			set
+			{
+				if ((this._Id != value))
+				{
+					this.OnIdChanging(value);
+					this.SendPropertyChanging();
+					this._Id = value;
+					this.SendPropertyChanged("Id");
+					this.OnIdChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Timestamp", DbType="DateTime NOT NULL")]
+		public System.DateTime Timestamp
+		{
+			get
+			{
+				return this._Timestamp;
+			}
+			set
+			{
+				if ((this._Timestamp != value))
+				{
+					this.OnTimestampChanging(value);
+					this.SendPropertyChanging();
+					this._Timestamp = value;
+					this.SendPropertyChanged("Timestamp");
+					this.OnTimestampChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Exception", DbType="NVarChar(MAX)")]
+		public string Exception
+		{
+			get
+			{
+				return this._Exception;
+			}
+			set
+			{
+				if ((this._Exception != value))
+				{
+					this.OnExceptionChanging(value);
+					this.SendPropertyChanging();
+					this._Exception = value;
+					this.SendPropertyChanged("Exception");
+					this.OnExceptionChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserComment", DbType="NVarChar(MAX)")]
+		public string UserComment
+		{
+			get
+			{
+				return this._UserComment;
+			}
+			set
+			{
+				if ((this._UserComment != value))
+				{
+					this.OnUserCommentChanging(value);
+					this.SendPropertyChanging();
+					this._UserComment = value;
+					this.SendPropertyChanged("UserComment");
+					this.OnUserCommentChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ConfigDump", DbType="NVarChar(MAX)")]
+		public string ConfigDump
+		{
+			get
+			{
+				return this._ConfigDump;
+			}
+			set
+			{
+				if ((this._ConfigDump != value))
+				{
+					this.OnConfigDumpChanging(value);
+					this.SendPropertyChanging();
+					this._ConfigDump = value;
+					this.SendPropertyChanged("ConfigDump");
+					this.OnConfigDumpChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ClientId", DbType="UniqueIdentifier")]
+		public System.Nullable<System.Guid> ClientId
+		{
+			get
+			{
+				return this._ClientId;
+			}
+			set
+			{
+				if ((this._ClientId != value))
+				{
+					this.OnClientIdChanging(value);
+					this.SendPropertyChanging();
+					this._ClientId = value;
+					this.SendPropertyChanged("ClientId");
+					this.OnClientIdChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserId", DbType="UniqueIdentifier")]
+		public System.Nullable<System.Guid> UserId
+		{
+			get
+			{
+				return this._UserId;
+			}
+			set
+			{
+				if ((this._UserId != value))
+				{
+					this.OnUserIdChanging(value);
+					this.SendPropertyChanging();
+					this._UserId = value;
+					this.SendPropertyChanged("UserId");
+					this.OnUserIdChanged();
+				}
+			}
+		}
+		
+		public event PropertyChangingEventHandler PropertyChanging;
+		
+		public event PropertyChangedEventHandler PropertyChanged;
+		
+		protected virtual void SendPropertyChanging()
+		{
+			if ((this.PropertyChanging != null))
+			{
+				this.PropertyChanging(this, emptyChangingEventArgs);
+			}
+		}
+		
+		protected virtual void SendPropertyChanged(String propertyName)
+		{
+			if ((this.PropertyChanged != null))
+			{
+				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
+			}
+		}
+	}
+	
+	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.UserGroup")]
+	[global::System.Data.Linq.Mapping.InheritanceMappingAttribute(Code="UserGroupBase", Type=typeof(UserGroupBase), IsDefault=true)]
+	[global::System.Data.Linq.Mapping.InheritanceMappingAttribute(Code="User", Type=typeof(User))]
+	[global::System.Data.Linq.Mapping.InheritanceMappingAttribute(Code="UserGroup", Type=typeof(UserGroup))]
+	public partial class UserGroupBase : INotifyPropertyChanging, INotifyPropertyChanged
+	{
+		
+		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
+		
+		private System.Guid _Id;
+		
+		private string _Type;
+		
+		private EntitySet<UserGroupUserGroup> _UserGroupUserGroups;
+		
+		private EntitySet<UserGroupUserGroup> _UserGroupUserGroups1;
+		
+    #region Extensibility Method Definitions
+    partial void OnLoaded();
+    partial void OnValidate(System.Data.Linq.ChangeAction action);
+    partial void OnCreated();
+    partial void OnIdChanging(System.Guid value);
+    partial void OnIdChanged();
+    partial void OnTypeChanging(string value);
+    partial void OnTypeChanged();
+    #endregion
+		
+		public UserGroupBase()
+		{
+			this._UserGroupUserGroups = new EntitySet<UserGroupUserGroup>(new Action<UserGroupUserGroup>(this.attach_UserGroupUserGroups), new Action<UserGroupUserGroup>(this.detach_UserGroupUserGroups));
+			this._UserGroupUserGroups1 = new EntitySet<UserGroupUserGroup>(new Action<UserGroupUserGroup>(this.attach_UserGroupUserGroups1), new Action<UserGroupUserGroup>(this.detach_UserGroupUserGroups1));
+			OnCreated();
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
+		public System.Guid Id
+		{
+			get
+			{
+				return this._Id;
+			}
+			set
+			{
+				if ((this._Id != value))
+				{
+					this.OnIdChanging(value);
+					this.SendPropertyChanging();
+					this._Id = value;
+					this.SendPropertyChanged("Id");
+					this.OnIdChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Type", DbType="NVarChar(10) NOT NULL", CanBeNull=false, IsDiscriminator=true)]
+		public string Type
+		{
+			get
+			{
+				return this._Type;
+			}
+			set
+			{
+				if ((this._Type != value))
+				{
+					this.OnTypeChanging(value);
+					this.SendPropertyChanging();
+					this._Type = value;
+					this.SendPropertyChanged("Type");
+					this.OnTypeChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="UserGroupBase_UserGroupUserGroup", Storage="_UserGroupUserGroups", ThisKey="Id", OtherKey="UserGroupId")]
+		public EntitySet<UserGroupUserGroup> UserGroupUserGroupsChilds
+		{
+			get
+			{
+				return this._UserGroupUserGroups;
+			}
+			set
+			{
+				this._UserGroupUserGroups.Assign(value);
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="UserGroupBase_UserGroupUserGroup1", Storage="_UserGroupUserGroups1", ThisKey="Id", OtherKey="UserGroupUserGroupId")]
+		public EntitySet<UserGroupUserGroup> UserGroupUserGroupsParents
+		{
+			get
+			{
+				return this._UserGroupUserGroups1;
+			}
+			set
+			{
+				this._UserGroupUserGroups1.Assign(value);
+			}
+		}
+		
+		public event PropertyChangingEventHandler PropertyChanging;
+		
+		public event PropertyChangedEventHandler PropertyChanged;
+		
+		protected virtual void SendPropertyChanging()
+		{
+			if ((this.PropertyChanging != null))
+			{
+				this.PropertyChanging(this, emptyChangingEventArgs);
+			}
+		}
+		
+		protected virtual void SendPropertyChanged(String propertyName)
+		{
+			if ((this.PropertyChanged != null))
+			{
+				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
+			}
+		}
+		
+		private void attach_UserGroupUserGroups(UserGroupUserGroup entity)
+		{
+			this.SendPropertyChanging();
+			entity.UserGroup = this;
+		}
+		
+		private void detach_UserGroupUserGroups(UserGroupUserGroup entity)
+		{
+			this.SendPropertyChanging();
+			entity.UserGroup = null;
+		}
+		
+		private void attach_UserGroupUserGroups1(UserGroupUserGroup entity)
+		{
+			this.SendPropertyChanging();
+			entity.UserGroupBase = this;
+		}
+		
+		private void detach_UserGroupUserGroups1(UserGroupUserGroup entity)
+		{
+			this.SendPropertyChanging();
+			entity.UserGroupBase = null;
+		}
+	}
+	
+	public partial class User : UserGroupBase
+	{
+		
+		private string _FullName;
+		
+    #region Extensibility Method Definitions
+    partial void OnLoaded();
+    partial void OnValidate(System.Data.Linq.ChangeAction action);
+    partial void OnCreated();
+    partial void OnFullNameChanging(string value);
+    partial void OnFullNameChanged();
+    #endregion
+		
+		public User()
+		{
+			OnCreated();
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_FullName", DbType="NVarChar(MAX)")]
+		public string FullName
+		{
+			get
+			{
+				return this._FullName;
+			}
+			set
+			{
+				if ((this._FullName != value))
+				{
+					this.OnFullNameChanging(value);
+					this.SendPropertyChanging();
+					this._FullName = value;
+					this.SendPropertyChanged("FullName");
+					this.OnFullNameChanged();
+				}
+			}
+		}
+	}
+	
+	public partial class UserGroup : UserGroupBase
+	{
+		
+		private string _Name;
+		
+    #region Extensibility Method Definitions
+    partial void OnLoaded();
+    partial void OnValidate(System.Data.Linq.ChangeAction action);
+    partial void OnCreated();
+    partial void OnNameChanging(string value);
+    partial void OnNameChanged();
+    #endregion
+		
+		public UserGroup()
+		{
+			OnCreated();
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(MAX)")]
+		public string Name
+		{
+			get
+			{
+				return this._Name;
+			}
+			set
+			{
+				if ((this._Name != value))
+				{
+					this.OnNameChanging(value);
+					this.SendPropertyChanging();
+					this._Name = value;
+					this.SendPropertyChanged("Name");
+					this.OnNameChanged();
+				}
+			}
+		}
+	}
+	
+	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.ClientType")]
+	public partial class ClientType : INotifyPropertyChanging, INotifyPropertyChanged
+	{
+		
+		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
+		
+		private System.Guid _Id;
+		
+		private string _Name;
+		
+    #region Extensibility Method Definitions
+    partial void OnLoaded();
+    partial void OnValidate(System.Data.Linq.ChangeAction action);
+    partial void OnCreated();
+    partial void OnIdChanging(System.Guid value);
+    partial void OnIdChanged();
+    partial void OnNameChanging(string value);
+    partial void OnNameChanged();
+    #endregion
+		
+		public ClientType()
+		{
+			OnCreated();
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
+		public System.Guid Id
+		{
+			get
+			{
+				return this._Id;
+			}
+			set
+			{
+				if ((this._Id != value))
+				{
+					this.OnIdChanging(value);
+					this.SendPropertyChanging();
+					this._Id = value;
+					this.SendPropertyChanged("Id");
+					this.OnIdChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(MAX) NOT NULL", CanBeNull=false)]
+		public string Name
+		{
+			get
+			{
+				return this._Name;
+			}
+			set
+			{
+				if ((this._Name != value))
+				{
+					this.OnNameChanging(value);
+					this.SendPropertyChanging();
+					this._Name = value;
+					this.SendPropertyChanged("Name");
+					this.OnNameChanged();
+				}
+			}
+		}
+		
+		public event PropertyChangingEventHandler PropertyChanging;
+		
+		public event PropertyChangedEventHandler PropertyChanged;
+		
+		protected virtual void SendPropertyChanging()
+		{
+			if ((this.PropertyChanging != null))
+			{
+				this.PropertyChanging(this, emptyChangingEventArgs);
+			}
+		}
+		
+		protected virtual void SendPropertyChanged(String propertyName)
+		{
+			if ((this.PropertyChanged != null))
+			{
+				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
+			}
+		}
+	}
+	
+	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.OperatingSystem")]
+	public partial class OperatingSystem : INotifyPropertyChanging, INotifyPropertyChanged
+	{
+		
+		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
+		
+		private System.Guid _Id;
+		
+		private string _Name;
+		
+    #region Extensibility Method Definitions
+    partial void OnLoaded();
+    partial void OnValidate(System.Data.Linq.ChangeAction action);
+    partial void OnCreated();
+    partial void OnIdChanging(System.Guid value);
+    partial void OnIdChanged();
+    partial void OnNameChanging(string value);
+    partial void OnNameChanged();
+    #endregion
+		
+		public OperatingSystem()
+		{
+			OnCreated();
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
+		public System.Guid Id
+		{
+			get
+			{
+				return this._Id;
+			}
+			set
+			{
+				if ((this._Id != value))
+				{
+					this.OnIdChanging(value);
+					this.SendPropertyChanging();
+					this._Id = value;
+					this.SendPropertyChanged("Id");
+					this.OnIdChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(MAX) NOT NULL", CanBeNull=false)]
+		public string Name
+		{
+			get
+			{
+				return this._Name;
+			}
+			set
+			{
+				if ((this._Name != value))
+				{
+					this.OnNameChanging(value);
+					this.SendPropertyChanging();
+					this._Name = value;
+					this.SendPropertyChanged("Name");
+					this.OnNameChanged();
+				}
+			}
+		}
+		
+		public event PropertyChangingEventHandler PropertyChanging;
+		
+		public event PropertyChangedEventHandler PropertyChanged;
+		
+		protected virtual void SendPropertyChanging()
+		{
+			if ((this.PropertyChanging != null))
+			{
+				this.PropertyChanging(this, emptyChangingEventArgs);
+			}
+		}
+		
+		protected virtual void SendPropertyChanged(String propertyName)
+		{
+			if ((this.PropertyChanged != null))
+			{
+				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
+			}
+		}
+	}
+	
+	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Country")]
+	public partial class Country : INotifyPropertyChanging, INotifyPropertyChanged
+	{
+		
+		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
+		
+		private System.Guid _Id;
+		
+		private string _Name;
+		
+    #region Extensibility Method Definitions
+    partial void OnLoaded();
+    partial void OnValidate(System.Data.Linq.ChangeAction action);
+    partial void OnCreated();
+    partial void OnIdChanging(System.Guid value);
+    partial void OnIdChanged();
+    partial void OnNameChanging(string value);
+    partial void OnNameChanged();
+    #endregion
+		
+		public Country()
+		{
+			OnCreated();
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
+		public System.Guid Id
+		{
+			get
+			{
+				return this._Id;
+			}
+			set
+			{
+				if ((this._Id != value))
+				{
+					this.OnIdChanging(value);
+					this.SendPropertyChanging();
+					this._Id = value;
+					this.SendPropertyChanged("Id");
+					this.OnIdChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(MAX) NOT NULL", CanBeNull=false)]
+		public string Name
+		{
+			get
+			{
+				return this._Name;
+			}
+			set
+			{
+				if ((this._Name != value))
+				{
+					this.OnNameChanging(value);
+					this.SendPropertyChanging();
+					this._Name = value;
+					this.SendPropertyChanged("Name");
+					this.OnNameChanged();
+				}
+			}
+		}
+		
+		public event PropertyChangingEventHandler PropertyChanging;
+		
+		public event PropertyChangedEventHandler PropertyChanged;
+		
+		protected virtual void SendPropertyChanging()
+		{
+			if ((this.PropertyChanging != null))
+			{
+				this.PropertyChanging(this, emptyChangingEventArgs);
+			}
+		}
+		
+		protected virtual void SendPropertyChanged(String propertyName)
+		{
+			if ((this.PropertyChanged != null))
+			{
+				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
+			}
+		}
+	}
+	
+	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.ClientConfiguration")]
+	public partial class ClientConfiguration : INotifyPropertyChanging, INotifyPropertyChanged
+	{
+		
+		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
+		
+		private System.Guid _Id;
+		
+		private string _Hash;
+		
+		private string _Description;
+		
+    #region Extensibility Method Definitions
+    partial void OnLoaded();
+    partial void OnValidate(System.Data.Linq.ChangeAction action);
+    partial void OnCreated();
+    partial void OnIdChanging(System.Guid value);
+    partial void OnIdChanged();
+    partial void OnHashChanging(string value);
+    partial void OnHashChanged();
+    partial void OnDescriptionChanging(string value);
+    partial void OnDescriptionChanged();
+    #endregion
+		
+		public ClientConfiguration()
+		{
+			OnCreated();
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
+		public System.Guid Id
+		{
+			get
+			{
+				return this._Id;
+			}
+			set
+			{
+				if ((this._Id != value))
+				{
+					this.OnIdChanging(value);
+					this.SendPropertyChanging();
+					this._Id = value;
+					this.SendPropertyChanged("Id");
+					this.OnIdChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Hash", DbType="NVarChar(MAX) NOT NULL", CanBeNull=false)]
+		public string Hash
+		{
+			get
+			{
+				return this._Hash;
+			}
+			set
+			{
+				if ((this._Hash != value))
+				{
+					this.OnHashChanging(value);
+					this.SendPropertyChanging();
+					this._Hash = value;
+					this.SendPropertyChanged("Hash");
+					this.OnHashChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Description", DbType="NVarChar(MAX)")]
+		public string Description
+		{
+			get
+			{
+				return this._Description;
+			}
+			set
+			{
+				if ((this._Description != value))
+				{
+					this.OnDescriptionChanging(value);
+					this.SendPropertyChanging();
+					this._Description = value;
+					this.SendPropertyChanged("Description");
+					this.OnDescriptionChanged();
+				}
+			}
+		}
+		
+		public event PropertyChangingEventHandler PropertyChanging;
+		
+		public event PropertyChangedEventHandler PropertyChanged;
+		
+		protected virtual void SendPropertyChanging()
+		{
+			if ((this.PropertyChanging != null))
+			{
+				this.PropertyChanging(this, emptyChangingEventArgs);
+			}
+		}
+		
+		protected virtual void SendPropertyChanged(String propertyName)
+		{
+			if ((this.PropertyChanged != null))
+			{
+				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
+			}
+		}
+	}
+	
+	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Plugin")]
+	public partial class Plugin : INotifyPropertyChanging, INotifyPropertyChanged
+	{
+		
+		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
+		
+		private System.Guid _Id;
+		
+		private string _Name;
+		
+		private string _StrongName;
+		
+		private string _Version;
+		
+		private EntitySet<ResourcePlugin> _ResourcePlugins;
+		
+    #region Extensibility Method Definitions
+    partial void OnLoaded();
+    partial void OnValidate(System.Data.Linq.ChangeAction action);
+    partial void OnCreated();
+    partial void OnIdChanging(System.Guid value);
+    partial void OnIdChanged();
+    partial void OnNameChanging(string value);
+    partial void OnNameChanged();
+    partial void OnStrongNameChanging(string value);
+    partial void OnStrongNameChanged();
+    partial void OnVersionChanging(string value);
+    partial void OnVersionChanged();
+    #endregion
+		
+		public Plugin()
+		{
+			this._ResourcePlugins = new EntitySet<ResourcePlugin>(new Action<ResourcePlugin>(this.attach_ResourcePlugins), new Action<ResourcePlugin>(this.detach_ResourcePlugins));
+			OnCreated();
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
+		public System.Guid Id
+		{
+			get
+			{
+				return this._Id;
+			}
+			set
+			{
+				if ((this._Id != value))
+				{
+					this.OnIdChanging(value);
+					this.SendPropertyChanging();
+					this._Id = value;
+					this.SendPropertyChanged("Id");
+					this.OnIdChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(MAX) NOT NULL", CanBeNull=false)]
+		public string Name
+		{
+			get
+			{
+				return this._Name;
+			}
+			set
+			{
+				if ((this._Name != value))
+				{
+					this.OnNameChanging(value);
+					this.SendPropertyChanging();
+					this._Name = value;
+					this.SendPropertyChanged("Name");
+					this.OnNameChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_StrongName", DbType="NVarChar(MAX)")]
+		public string StrongName
+		{
+			get
+			{
+				return this._StrongName;
+			}
+			set
+			{
+				if ((this._StrongName != value))
+				{
+					this.OnStrongNameChanging(value);
+					this.SendPropertyChanging();
+					this._StrongName = value;
+					this.SendPropertyChanged("StrongName");
+					this.OnStrongNameChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Version", DbType="NVarChar(20) NOT NULL", CanBeNull=false)]
+		public string Version
+		{
+			get
+			{
+				return this._Version;
+			}
+			set
+			{
+				if ((this._Version != value))
+				{
+					this.OnVersionChanging(value);
+					this.SendPropertyChanging();
+					this._Version = value;
+					this.SendPropertyChanged("Version");
+					this.OnVersionChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="Plugin_ResourcePlugin", Storage="_ResourcePlugins", ThisKey="Id", OtherKey="PluginId")]
+		public EntitySet<ResourcePlugin> ResourcePlugins
+		{
+			get
+			{
+				return this._ResourcePlugins;
+			}
+			set
+			{
+				this._ResourcePlugins.Assign(value);
+			}
+		}
+		
+		public event PropertyChangingEventHandler PropertyChanging;
+		
+		public event PropertyChangedEventHandler PropertyChanged;
+		
+		protected virtual void SendPropertyChanging()
+		{
+			if ((this.PropertyChanging != null))
+			{
+				this.PropertyChanging(this, emptyChangingEventArgs);
+			}
+		}
+		
+		protected virtual void SendPropertyChanged(String propertyName)
+		{
+			if ((this.PropertyChanged != null))
+			{
+				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
+			}
+		}
+		
+		private void attach_ResourcePlugins(ResourcePlugin entity)
+		{
+			this.SendPropertyChanging();
+			entity.Plugin = this;
+		}
+		
+		private void detach_ResourcePlugins(ResourcePlugin entity)
+		{
+			this.SendPropertyChanging();
+			entity.Plugin = null;
+		}
+	}
+	
+	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.ResourcePlugin")]
+	public partial class ResourcePlugin : INotifyPropertyChanging, INotifyPropertyChanged
+	{
+		
+		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
+		
+		private System.Guid _ResourceId;
+		
+		private System.Guid _PluginId;
+		
+		private EntityRef<Plugin> _Plugin;
+		
+		private EntityRef<Resource> _Resource;
+		
+    #region Extensibility Method Definitions
+    partial void OnLoaded();
+    partial void OnValidate(System.Data.Linq.ChangeAction action);
+    partial void OnCreated();
+    partial void OnResourceIdChanging(System.Guid value);
+    partial void OnResourceIdChanged();
+    partial void OnPluginIdChanging(System.Guid value);
+    partial void OnPluginIdChanged();
+    #endregion
+		
+		public ResourcePlugin()
+		{
+			this._Plugin = default(EntityRef<Plugin>);
+			this._Resource = default(EntityRef<Resource>);
+			OnCreated();
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResourceId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
+		public System.Guid ResourceId
+		{
+			get
+			{
+				return this._ResourceId;
+			}
+			set
+			{
+				if ((this._ResourceId != value))
+				{
+					if (this._Resource.HasLoadedOrAssignedValue)
+					{
+						throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
+					}
+					this.OnResourceIdChanging(value);
+					this.SendPropertyChanging();
+					this._ResourceId = value;
+					this.SendPropertyChanged("ResourceId");
+					this.OnResourceIdChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PluginId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
+		public System.Guid PluginId
+		{
+			get
+			{
+				return this._PluginId;
+			}
+			set
+			{
+				if ((this._PluginId != value))
+				{
+					if (this._Plugin.HasLoadedOrAssignedValue)
+					{
+						throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
+					}
+					this.OnPluginIdChanging(value);
+					this.SendPropertyChanging();
+					this._PluginId = value;
+					this.SendPropertyChanged("PluginId");
+					this.OnPluginIdChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="Plugin_ResourcePlugin", Storage="_Plugin", ThisKey="PluginId", OtherKey="Id", IsForeignKey=true)]
+		public Plugin Plugin
+		{
+			get
+			{
+				return this._Plugin.Entity;
+			}
+			set
+			{
+				Plugin previousValue = this._Plugin.Entity;
+				if (((previousValue != value) 
+							|| (this._Plugin.HasLoadedOrAssignedValue == false)))
+				{
+					this.SendPropertyChanging();
+					if ((previousValue != null))
+					{
+						this._Plugin.Entity = null;
+						previousValue.ResourcePlugins.Remove(this);
+					}
+					this._Plugin.Entity = value;
+					if ((value != null))
+					{
+						value.ResourcePlugins.Add(this);
+						this._PluginId = value.Id;
+					}
+					else
+					{
+						this._PluginId = default(System.Guid);
+					}
+					this.SendPropertyChanged("Plugin");
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="Resource_ResourcePlugin", Storage="_Resource", ThisKey="ResourceId", OtherKey="Id", IsForeignKey=true)]
+		public Resource Resource
+		{
+			get
+			{
+				return this._Resource.Entity;
+			}
+			set
+			{
+				Resource previousValue = this._Resource.Entity;
+				if (((previousValue != value) 
+							|| (this._Resource.HasLoadedOrAssignedValue == false)))
+				{
+					this.SendPropertyChanging();
+					if ((previousValue != null))
+					{
+						this._Resource.Entity = null;
+						previousValue.ResourcePlugins.Remove(this);
+					}
+					this._Resource.Entity = value;
+					if ((value != null))
+					{
+						value.ResourcePlugins.Add(this);
+						this._ResourceId = value.Id;
+					}
+					else
+					{
+						this._ResourceId = default(System.Guid);
+					}
+					this.SendPropertyChanged("Resource");
+				}
+			}
+		}
+		
+		public event PropertyChangingEventHandler PropertyChanging;
+		
+		public event PropertyChangedEventHandler PropertyChanged;
+		
+		protected virtual void SendPropertyChanging()
+		{
+			if ((this.PropertyChanging != null))
+			{
+				this.PropertyChanging(this, emptyChangingEventArgs);
+			}
+		}
+		
+		protected virtual void SendPropertyChanged(String propertyName)
+		{
+			if ((this.PropertyChanged != null))
+			{
+				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
+			}
+		}
+	}
+	
+	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.UserGroupUserGroup")]
+	public partial class UserGroupUserGroup : INotifyPropertyChanging, INotifyPropertyChanged
+	{
+		
+		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
+		
+		private System.Guid _UserGroupId;
+		
+		private System.Guid _UserGroupUserGroupId;
+		
+		private EntityRef<UserGroupBase> _UserGroup;
+		
+		private EntityRef<UserGroupBase> _UserGroupBase;
+		
+    #region Extensibility Method Definitions
+    partial void OnLoaded();
+    partial void OnValidate(System.Data.Linq.ChangeAction action);
+    partial void OnCreated();
+    partial void OnUserGroupIdChanging(System.Guid value);
+    partial void OnUserGroupIdChanged();
+    partial void OnUserGroupUserGroupIdChanging(System.Guid value);
+    partial void OnUserGroupUserGroupIdChanged();
+    #endregion
+		
+		public UserGroupUserGroup()
+		{
+			this._UserGroup = default(EntityRef<UserGroupBase>);
+			this._UserGroupBase = default(EntityRef<UserGroupBase>);
+			OnCreated();
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserGroupId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
+		public System.Guid UserGroupId
+		{
+			get
+			{
+				return this._UserGroupId;
+			}
+			set
+			{
+				if ((this._UserGroupId != value))
+				{
+					if (this._UserGroup.HasLoadedOrAssignedValue)
+					{
+						throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
+					}
+					this.OnUserGroupIdChanging(value);
+					this.SendPropertyChanging();
+					this._UserGroupId = value;
+					this.SendPropertyChanged("UserGroupId");
+					this.OnUserGroupIdChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserGroupUserGroupId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
+		public System.Guid UserGroupUserGroupId
+		{
+			get
+			{
+				return this._UserGroupUserGroupId;
+			}
+			set
+			{
+				if ((this._UserGroupUserGroupId != value))
+				{
+					if (this._UserGroupBase.HasLoadedOrAssignedValue)
+					{
+						throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
+					}
+					this.OnUserGroupUserGroupIdChanging(value);
+					this.SendPropertyChanging();
+					this._UserGroupUserGroupId = value;
+					this.SendPropertyChanged("UserGroupUserGroupId");
+					this.OnUserGroupUserGroupIdChanged();
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="UserGroupBase_UserGroupUserGroup", Storage="_UserGroup", ThisKey="UserGroupId", OtherKey="Id", IsForeignKey=true)]
+		public UserGroupBase UserGroup
+		{
+			get
+			{
+				return this._UserGroup.Entity;
+			}
+			set
+			{
+				UserGroupBase previousValue = this._UserGroup.Entity;
+				if (((previousValue != value) 
+							|| (this._UserGroup.HasLoadedOrAssignedValue == false)))
+				{
+					this.SendPropertyChanging();
+					if ((previousValue != null))
+					{
+						this._UserGroup.Entity = null;
+						previousValue.UserGroupUserGroupsChilds.Remove(this);
+					}
+					this._UserGroup.Entity = value;
+					if ((value != null))
+					{
+						value.UserGroupUserGroupsChilds.Add(this);
+						this._UserGroupId = value.Id;
+					}
+					else
+					{
+						this._UserGroupId = default(System.Guid);
+					}
+					this.SendPropertyChanged("UserGroup");
+				}
+			}
+		}
+		
+		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="UserGroupBase_UserGroupUserGroup1", Storage="_UserGroupBase", ThisKey="UserGroupUserGroupId", OtherKey="Id", IsForeignKey=true)]
+		public UserGroupBase UserGroupBase
+		{
+			get
+			{
+				return this._UserGroupBase.Entity;
+			}
+			set
+			{
+				UserGroupBase previousValue = this._UserGroupBase.Entity;
+				if (((previousValue != value) 
+							|| (this._UserGroupBase.HasLoadedOrAssignedValue == false)))
+				{
+					this.SendPropertyChanging();
+					if ((previousValue != null))
+					{
+						this._UserGroupBase.Entity = null;
+						previousValue.UserGroupUserGroupsParents.Remove(this);
+					}
+					this._UserGroupBase.Entity = value;
+					if ((value != null))
+					{
+						value.UserGroupUserGroupsParents.Add(this);
+						this._UserGroupUserGroupId = value.Id;
+					}
+					else
+					{
+						this._UserGroupUserGroupId = default(System.Guid);
+					}
+					this.SendPropertyChanged("UserGroupBase");
+				}
+			}
+		}
+		
+		public event PropertyChangingEventHandler PropertyChanging;
+		
+		public event PropertyChangedEventHandler PropertyChanged;
+		
+		protected virtual void SendPropertyChanging()
+		{
+			if ((this.PropertyChanging != null))
+			{
+				this.PropertyChanging(this, emptyChangingEventArgs);
+			}
+		}
+		
+		protected virtual void SendPropertyChanged(String propertyName)
+		{
+			if ((this.PropertyChanged != null))
+			{
+				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
+			}
+		}
+	}
+}
+#pragma warning restore 1591
Index: branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/ClientManagement.dbml
===================================================================
--- branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/ClientManagement.dbml	(revision 7536)
+++ 	(revision )
@@ -1,123 +1,0 @@
-﻿<?xml version="1.0" encoding="utf-8"?><Database Name="HeuristicLab.ClientManagement" Class="ClientManagementDataContext" xmlns="http://schemas.microsoft.com/linqtosql/dbml/2007">
-  <Connection Mode="AppSettings" ConnectionString="Data Source=.;Initial Catalog=HeuristicLab.ClientManagement;Integrated Security=True" SettingsObjectName="HeuristicLab.Services.Access.DataAccess.Properties.Settings" SettingsPropertyName="HeuristicLab_ClientManagementConnectionString" Provider="System.Data.SqlClient" />
-  <Table Name="dbo.Resource" Member="Resources">
-    <Type Name="Resource" InheritanceCode="Resource" IsInheritanceDefault="true">
-      <Column Name="Id" AutoSync="OnInsert" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
-      <Column Name="Name" Type="System.String" DbType="NVarChar(MAX) NOT NULL" CanBeNull="false" />
-      <Column Name="Description" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="false" />
-      <Column Name="Type" Type="System.String" DbType="NVarChar(MAX) NOT NULL" CanBeNull="false" IsDiscriminator="true" />
-      <Association Name="Resource_ResourceResourceGroup" Member="ResourceResourceGroupsChilds" Storage="_ResourceResourceGroups" ThisKey="Id" OtherKey="ResourceGroupId" Type="ResourceResourceGroup" />
-      <Association Name="Resource_ResourceResourceGroup1" Member="ResourceResourceGroupsParents" Storage="_ResourceResourceGroups1" ThisKey="Id" OtherKey="ResourceId" Type="ResourceResourceGroup" />
-      <Association Name="Resource_ClientLog" Member="ClientLogs" ThisKey="Id" OtherKey="ResourceId" Type="ClientLog" />
-      <Association Name="Resource_ResourcePlugin" Member="ResourcePlugins" ThisKey="Id" OtherKey="ResourceId" Type="ResourcePlugin" />
-      <Type Name="Client" InheritanceCode="Client">
-        <Column Name="HeuristicLabVersion" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="false" />
-        <Column Name="MemorySize" Type="System.Int32" DbType="Int" CanBeNull="true" />
-        <Column Name="Timestamp" Type="System.DateTime" DbType="DateTime" CanBeNull="true" />
-        <Column Name="NumberOfCores" Type="System.Int32" DbType="Int" CanBeNull="true" />
-        <Column Name="ProcessorType" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
-        <Column Name="ClientTypeId" Type="System.Guid" DbType="UniqueIdentifier" CanBeNull="true" />
-        <Column Name="OperatingSystemId" Type="System.Guid" DbType="UniqueIdentifier" CanBeNull="true" />
-        <Column Name="ClientConfigurationId" Type="System.Guid" DbType="UniqueIdentifier" CanBeNull="true" />
-        <Column Name="CountryId" Type="System.Guid" DbType="UniqueIdentifier" CanBeNull="true" />
-        <Column Name="PerformanceValue" Type="System.Double" DbType="real" CanBeNull="true" />
-        <Association Name="ClientType_Client" Member="ClientType" ThisKey="ClientTypeId" OtherKey="Id" Type="ClientType" IsForeignKey="true" />
-        <Association Name="OperatingSystem_Client" Member="OperatingSystem" ThisKey="OperatingSystemId" OtherKey="Id" Type="OperatingSystem" IsForeignKey="true" />
-        <Association Name="Country_Client" Member="Country" ThisKey="CountryId" OtherKey="Id" Type="Country" IsForeignKey="true" />
-        <Association Name="ClientConfiguration_Client" Member="ClientConfiguration" ThisKey="ClientConfigurationId" OtherKey="Id" Type="ClientConfiguration" IsForeignKey="true" />
-      </Type>
-      <Type Name="ClientGroup" InheritanceCode="ClientGroup" />
-    </Type>
-  </Table>
-  <Table Name="dbo.ResourceResourceGroup" Member="ResourceResourceGroups">
-    <Type Name="ResourceResourceGroup">
-      <Column Name="ResourceId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
-      <Column Name="ResourceGroupId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
-      <Association Name="Resource_ResourceResourceGroup" Member="ParentResource" Storage="_Resource" ThisKey="ResourceGroupId" OtherKey="Id" Type="Resource" IsForeignKey="true" />
-      <Association Name="Resource_ResourceResourceGroup1" Member="Resource" Storage="_Resource1" ThisKey="ResourceId" OtherKey="Id" Type="Resource" IsForeignKey="true" />
-    </Type>
-  </Table>
-  <Table Name="dbo.ClientLog" Member="ClientLogs">
-    <Type Name="ClientLog">
-      <Column Name="Timestamp" Type="System.DateTime" DbType="DateTime NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
-      <Column Name="ResourceId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
-      <Column Name="Message" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
-      <Association Name="Resource_ClientLog" Member="Resource" ThisKey="ResourceId" OtherKey="Id" Type="Resource" IsForeignKey="true" />
-    </Type>
-  </Table>
-  <Table Name="dbo.ClientError" Member="ClientErrors">
-    <Type Name="ClientError">
-      <Column Name="Id" AutoSync="Never" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
-      <Column Name="Timestamp" Type="System.DateTime" DbType="DateTime NOT NULL" CanBeNull="false" />
-      <Column Name="Exception" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
-      <Column Name="UserComment" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
-      <Column Name="ConfigDump" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
-      <Column Name="ClientId" Type="System.Guid" DbType="UniqueIdentifier" CanBeNull="true" />
-      <Column Name="UserId" Type="System.Guid" DbType="UniqueIdentifier" CanBeNull="true" />
-    </Type>
-  </Table>
-  <Table Name="dbo.UserGroup" Member="UserGroupBases">
-    <Type Name="UserGroupBase" InheritanceCode="UserGroupBase" IsInheritanceDefault="true">
-      <Column Name="Id" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
-      <Column Name="Type" Type="System.String" DbType="NVarChar(10) NOT NULL" CanBeNull="false" IsDiscriminator="true" />
-      <Association Name="UserGroupBase_UserGroupUserGroup" Member="UserGroupUserGroupsChilds" Storage="_UserGroupUserGroups" ThisKey="Id" OtherKey="UserGroupId" Type="UserGroupUserGroup" />
-      <Association Name="UserGroupBase_UserGroupUserGroup1" Member="UserGroupUserGroupsParents" Storage="_UserGroupUserGroups1" ThisKey="Id" OtherKey="UserGroupUserGroupId" Type="UserGroupUserGroup" />
-      <Type Name="User" InheritanceCode="User">
-        <Column Name="FullName" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
-      </Type>
-      <Type Name="UserGroup" InheritanceCode="UserGroup">
-        <Column Name="Name" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
-      </Type>
-    </Type>
-  </Table>
-  <Table Name="dbo.ClientType" Member="ClientTypes">
-    <Type Name="ClientType">
-      <Column Name="Id" AutoSync="Never" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
-      <Column Name="Name" Type="System.String" DbType="NVarChar(MAX) NOT NULL" CanBeNull="false" />
-    </Type>
-  </Table>
-  <Table Name="dbo.OperatingSystem" Member="OperatingSystems">
-    <Type Name="OperatingSystem">
-      <Column Name="Id" AutoSync="Never" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
-      <Column Name="Name" Type="System.String" DbType="NVarChar(MAX) NOT NULL" CanBeNull="false" />
-    </Type>
-  </Table>
-  <Table Name="dbo.Country" Member="Countries">
-    <Type Name="Country">
-      <Column Name="Id" AutoSync="Never" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
-      <Column Name="Name" Type="System.String" DbType="NVarChar(MAX) NOT NULL" CanBeNull="false" />
-    </Type>
-  </Table>
-  <Table Name="dbo.ClientConfiguration" Member="ClientConfigurations">
-    <Type Name="ClientConfiguration">
-      <Column Name="Id" AutoSync="Never" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
-      <Column Name="Hash" Type="System.String" DbType="NVarChar(MAX) NOT NULL" CanBeNull="false" />
-      <Column Name="Description" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
-    </Type>
-  </Table>
-  <Table Name="dbo.Plugin" Member="Plugins">
-    <Type Name="Plugin">
-      <Column Name="Id" AutoSync="Never" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false" />
-      <Column Name="Name" Type="System.String" DbType="NVarChar(MAX) NOT NULL" CanBeNull="false" />
-      <Column Name="StrongName" Type="System.String" DbType="NVarChar(MAX)" CanBeNull="true" />
-      <Column Name="Version" Type="System.String" DbType="NVarChar(20) NOT NULL" CanBeNull="false" />
-      <Association Name="Plugin_ResourcePlugin" Member="ResourcePlugins" ThisKey="Id" OtherKey="PluginId" Type="ResourcePlugin" />
-    </Type>
-  </Table>
-  <Table Name="dbo.ResourcePlugin" Member="ResourcePlugins">
-    <Type Name="ResourcePlugin">
-      <Column Name="ResourceId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
-      <Column Name="PluginId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
-      <Association Name="Plugin_ResourcePlugin" Member="Plugin" ThisKey="PluginId" OtherKey="Id" Type="Plugin" IsForeignKey="true" />
-      <Association Name="Resource_ResourcePlugin" Member="Resource" ThisKey="ResourceId" OtherKey="Id" Type="Resource" IsForeignKey="true" />
-    </Type>
-  </Table>
-  <Table Name="dbo.UserGroupUserGroup" Member="UserGroupUserGroups">
-    <Type Name="UserGroupUserGroup">
-      <Column Name="UserGroupId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
-      <Column Name="UserGroupUserGroupId" Type="System.Guid" DbType="UniqueIdentifier NOT NULL" IsPrimaryKey="true" CanBeNull="false" />
-      <Association Name="UserGroupBase_UserGroupUserGroup" Member="UserGroup" ThisKey="UserGroupId" OtherKey="Id" Type="UserGroupBase" IsForeignKey="true" />
-      <Association Name="UserGroupBase_UserGroupUserGroup1" Member="UserGroupBase" ThisKey="UserGroupUserGroupId" OtherKey="Id" Type="UserGroupBase" IsForeignKey="true" />
-    </Type>
-  </Table>
-</Database>
Index: branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/ClientManagement.dbml.layout
===================================================================
--- branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/ClientManagement.dbml.layout	(revision 7536)
+++ 	(revision )
@@ -1,203 +1,0 @@
-﻿<?xml version="1.0" encoding="utf-8"?>
-<ordesignerObjectsDiagram dslVersion="1.0.0.0" absoluteBounds="0, 0, 13, 8.5" name="ClientManagement">
-  <DataContextMoniker Name="/ClientManagementDataContext" />
-  <nestedChildShapes>
-    <classShape Id="20c6e07e-aa12-43dc-87d6-dae5bf173da4" absoluteBounds="4.625, 0.5, 2, 1.5785953776041666">
-      <DataClassMoniker Name="/ClientManagementDataContext/Resource" />
-      <nestedChildShapes>
-        <elementListCompartment Id="f2c7fc66-3f50-4f7e-8f46-8f4bfeea7af2" absoluteBounds="4.64, 0.96, 1.9700000000000002, 1.0185953776041665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
-      </nestedChildShapes>
-    </classShape>
-    <classShape Id="6355c88b-386a-4bd7-8aa0-144305c33372" absoluteBounds="7.75, 0.5, 2, 1.1939925130208333">
-      <DataClassMoniker Name="/ClientManagementDataContext/ResourceResourceGroup" />
-      <nestedChildShapes>
-        <elementListCompartment Id="d88684ee-600b-4867-9de2-dfbfba71f34b" absoluteBounds="7.7650000000000006, 0.96, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
-      </nestedChildShapes>
-    </classShape>
-    <associationConnector edgePoints="[(6.625 : 1.09699625651042); (7.75 : 1.09699625651042)]" fixedFrom="NotFixed" fixedTo="NotFixed">
-      <AssociationMoniker Name="/ClientManagementDataContext/Resource/Resource_ResourceResourceGroup" />
-      <nodes>
-        <classShapeMoniker Id="20c6e07e-aa12-43dc-87d6-dae5bf173da4" />
-        <classShapeMoniker Id="6355c88b-386a-4bd7-8aa0-144305c33372" />
-      </nodes>
-    </associationConnector>
-    <associationConnector edgePoints="[(6.625 : 0.735998128255208); (7.75 : 0.735998128255208)]" fixedFrom="NotFixed" fixedTo="NotFixed">
-      <AssociationMoniker Name="/ClientManagementDataContext/Resource/Resource_ResourceResourceGroup1" />
-      <nodes>
-        <classShapeMoniker Id="20c6e07e-aa12-43dc-87d6-dae5bf173da4" />
-        <classShapeMoniker Id="6355c88b-386a-4bd7-8aa0-144305c33372" />
-      </nodes>
-    </associationConnector>
-    <classShape Id="c964402f-99b7-4355-b9ad-279a2a7cf692" absoluteBounds="3.75, 2.5, 2, 2.7324039713541666">
-      <DataClassMoniker Name="/ClientManagementDataContext/Client" />
-      <nestedChildShapes>
-        <elementListCompartment Id="8d16a96c-4ba3-4e2b-b267-0cfe5bb174f1" absoluteBounds="3.7650000000000006, 2.96, 1.9700000000000002, 2.1724039713541665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
-      </nestedChildShapes>
-    </classShape>
-    <classShape Id="1e545126-1016-4d14-ad12-0bfdb7ec53b7" absoluteBounds="6, 2.5, 2, 0.8093896484375">
-      <DataClassMoniker Name="/ClientManagementDataContext/ClientGroup" />
-      <nestedChildShapes>
-        <elementListCompartment Id="d7b60f1c-6c2e-4c1e-a3a1-4b5802d227bb" absoluteBounds="6, 2.5, 0.125, 0.2493896484375" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
-      </nestedChildShapes>
-    </classShape>
-    <inheritanceConnector edgePoints="[(5.625 : 2.07859537760417); (5.625 : 2.26); (4.75 : 2.26); (4.75 : 2.5)]" fixedFrom="NotFixed" fixedTo="NotFixed" TargetRelationshipDomainClassId="7a7fe09e-e9ef-4b01-9ff3-bde95e827b62">
-      <nodes>
-        <classShapeMoniker Id="20c6e07e-aa12-43dc-87d6-dae5bf173da4" />
-        <classShapeMoniker Id="c964402f-99b7-4355-b9ad-279a2a7cf692" />
-      </nodes>
-    </inheritanceConnector>
-    <inheritanceConnector edgePoints="[(5.625 : 2.07859537760417); (5.625 : 2.26); (5.79166666666667 : 2.26 : JumpStart); (5.95833333333333 : 2.26 : JumpEnd); (7 : 2.26); (7 : 2.5)]" fixedFrom="NotFixed" fixedTo="NotFixed" TargetRelationshipDomainClassId="7a7fe09e-e9ef-4b01-9ff3-bde95e827b62">
-      <nodes>
-        <classShapeMoniker Id="20c6e07e-aa12-43dc-87d6-dae5bf173da4" />
-        <classShapeMoniker Id="1e545126-1016-4d14-ad12-0bfdb7ec53b7" />
-      </nodes>
-    </inheritanceConnector>
-    <classShape Id="0cc124dd-2ee8-42b6-b176-cd3b22d9eabd" absoluteBounds="8.125, 2, 2, 1.3862939453125">
-      <DataClassMoniker Name="/ClientManagementDataContext/ClientLog" />
-      <nestedChildShapes>
-        <elementListCompartment Id="adf1d053-cb27-4891-bb3c-f3849497b953" absoluteBounds="8.14, 2.46, 1.9700000000000002, 0.8262939453125" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
-      </nestedChildShapes>
-    </classShape>
-    <associationConnector edgePoints="[(5.875 : 2.07859537760417); (5.875 : 2.34875); (8.125 : 2.34875)]" fixedFrom="NotFixed" fixedTo="NotFixed">
-      <AssociationMoniker Name="/ClientManagementDataContext/Resource/Resource_ClientLog" />
-      <nodes>
-        <classShapeMoniker Id="20c6e07e-aa12-43dc-87d6-dae5bf173da4" />
-        <classShapeMoniker Id="0cc124dd-2ee8-42b6-b176-cd3b22d9eabd" />
-      </nodes>
-    </associationConnector>
-    <classShape Id="5e8ae5e1-4026-47e5-91fb-9607de024aad" absoluteBounds="10.375, 0.5, 2, 2.1554996744791666">
-      <DataClassMoniker Name="/ClientManagementDataContext/ClientError" />
-      <nestedChildShapes>
-        <elementListCompartment Id="0aee0bb0-fc18-4610-ab43-c4cf50ce4228" absoluteBounds="10.39, 0.96, 1.9700000000000002, 1.5954996744791665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
-      </nestedChildShapes>
-    </classShape>
-    <classShape Id="452ce94a-9bd2-4968-9a5f-a0ab1dba6b2e" absoluteBounds="7.875, 3.875, 2, 1.1939925130208327">
-      <DataClassMoniker Name="/ClientManagementDataContext/UserGroupBase" />
-      <nestedChildShapes>
-        <elementListCompartment Id="4a562596-7b72-43d1-9790-93d049a0a0a8" absoluteBounds="7.8900000000000006, 4.335, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
-      </nestedChildShapes>
-    </classShape>
-    <classShape Id="38891c77-8166-44c9-8dd5-da45900c45f3" absoluteBounds="0.5, 0.5, 2, 1.1939925130208333">
-      <DataClassMoniker Name="/ClientManagementDataContext/ClientType" />
-      <nestedChildShapes>
-        <elementListCompartment Id="3db061b5-e614-4933-9550-32a85dc3278c" absoluteBounds="0.515, 0.96, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
-      </nestedChildShapes>
-    </classShape>
-    <classShape Id="cb6a29ca-7ef1-4721-9108-b64558f282a6" absoluteBounds="0.5, 1.75, 2, 1.1939925130208333">
-      <DataClassMoniker Name="/ClientManagementDataContext/OperatingSystem" />
-      <nestedChildShapes>
-        <elementListCompartment Id="d155707b-11d5-4dbf-9890-697e6940e697" absoluteBounds="0.51500000000000012, 2.21, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
-      </nestedChildShapes>
-    </classShape>
-    <classShape Id="c7dfcb39-11e2-47ec-8a48-4e41e2901893" absoluteBounds="0.5, 3, 2, 1.1939925130208333">
-      <DataClassMoniker Name="/ClientManagementDataContext/Country" />
-      <nestedChildShapes>
-        <elementListCompartment Id="257ba077-a1cc-43ac-b4a4-e88df1d32e31" absoluteBounds="0.51500000000000012, 3.46, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
-      </nestedChildShapes>
-    </classShape>
-    <classShape Id="3aef9298-1092-45fa-bf96-8dd25d61c2f8" absoluteBounds="0.5, 4.25, 2, 1.3862939453125">
-      <DataClassMoniker Name="/ClientManagementDataContext/ClientConfiguration" />
-      <nestedChildShapes>
-        <elementListCompartment Id="6444a95d-bd46-4977-9ee8-0e5dd3e297d1" absoluteBounds="0.51500000000000012, 4.71, 1.9700000000000002, 0.8262939453125" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
-      </nestedChildShapes>
-    </classShape>
-    <classShape Id="f8d63089-5458-4918-a098-5d9f2c3ac629" absoluteBounds="0.5, 5.75, 2, 1.5785953776041666">
-      <DataClassMoniker Name="/ClientManagementDataContext/Plugin" />
-      <nestedChildShapes>
-        <elementListCompartment Id="490da272-92c4-484c-823e-97f3d08d72a3" absoluteBounds="0.51500000000000012, 6.21, 1.9700000000000002, 1.0185953776041665" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
-      </nestedChildShapes>
-    </classShape>
-    <classShape Id="9f63fd2b-4410-4817-99d4-648466eacddd" absoluteBounds="3.625, 5.625, 2, 1.1939925130208333">
-      <DataClassMoniker Name="/ClientManagementDataContext/ResourcePlugin" />
-      <nestedChildShapes>
-        <elementListCompartment Id="de5c9495-8c9c-43b6-9b59-4a187db3e607" absoluteBounds="3.64, 6.085, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
-      </nestedChildShapes>
-    </classShape>
-    <associationConnector edgePoints="[(2.5 : 6.28449625651042); (3.625 : 6.28449625651042)]" fixedFrom="NotFixed" fixedTo="NotFixed">
-      <AssociationMoniker Name="/ClientManagementDataContext/Plugin/Plugin_ResourcePlugin" />
-      <nodes>
-        <classShapeMoniker Id="f8d63089-5458-4918-a098-5d9f2c3ac629" />
-        <classShapeMoniker Id="9f63fd2b-4410-4817-99d4-648466eacddd" />
-      </nodes>
-    </associationConnector>
-    <associationConnector edgePoints="[(5.90625 : 2.07859537760417); (5.90625 : 6.22199625651042); (5.625 : 6.22199625651042)]" fixedFrom="NotFixed" fixedTo="NotFixed">
-      <AssociationMoniker Name="/ClientManagementDataContext/Resource/Resource_ResourcePlugin" />
-      <nodes>
-        <classShapeMoniker Id="20c6e07e-aa12-43dc-87d6-dae5bf173da4" />
-        <classShapeMoniker Id="9f63fd2b-4410-4817-99d4-648466eacddd" />
-      </nodes>
-    </associationConnector>
-    <classShape Id="289f3b5e-1167-4ac9-8241-cfda58670cf7" absoluteBounds="6.625, 5.875, 2, 1.0016910807291666">
-      <DataClassMoniker Name="/ClientManagementDataContext/User" />
-      <nestedChildShapes>
-        <elementListCompartment Id="c43044c1-4b3a-413d-9c9b-38926f40719a" absoluteBounds="6.64, 6.335, 1.9700000000000002, 0.44169108072916669" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
-      </nestedChildShapes>
-    </classShape>
-    <classShape Id="62262fbd-3de1-47dd-bbdd-05e982e88e29" absoluteBounds="10.75, 4, 2, 1.1939925130208333">
-      <DataClassMoniker Name="/ClientManagementDataContext/UserGroupUserGroup" />
-      <nestedChildShapes>
-        <elementListCompartment Id="6da6d908-1d40-4f5e-a6c9-8ee8edcccc10" absoluteBounds="10.765, 4.46, 1.9700000000000002, 0.63399251302083326" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
-      </nestedChildShapes>
-    </classShape>
-    <classShape Id="722ccaeb-f35a-4a76-8d2f-850633dc444a" absoluteBounds="9.25, 5.875, 2, 1.0016910807291666">
-      <DataClassMoniker Name="/ClientManagementDataContext/UserGroup" />
-      <nestedChildShapes>
-        <elementListCompartment Id="b7d51ef7-026b-4cef-9a32-1cf3a63828d5" absoluteBounds="9.265, 6.335, 1.9700000000000002, 0.44169108072916669" name="DataPropertiesCompartment" titleTextColor="Black" itemTextColor="Black" />
-      </nestedChildShapes>
-    </classShape>
-    <inheritanceConnector edgePoints="[(8.875 : 5.06899251302083); (8.875 : 5.5); (7.625 : 5.5); (7.625 : 5.875)]" fixedFrom="NotFixed" fixedTo="NotFixed" TargetRelationshipDomainClassId="7a7fe09e-e9ef-4b01-9ff3-bde95e827b62">
-      <nodes>
-        <classShapeMoniker Id="452ce94a-9bd2-4968-9a5f-a0ab1dba6b2e" />
-        <classShapeMoniker Id="289f3b5e-1167-4ac9-8241-cfda58670cf7" />
-      </nodes>
-    </inheritanceConnector>
-    <inheritanceConnector edgePoints="[(8.875 : 5.06899251302083); (8.875 : 5.5); (10.25 : 5.5); (10.25 : 5.875)]" fixedFrom="NotFixed" fixedTo="NotFixed" TargetRelationshipDomainClassId="7a7fe09e-e9ef-4b01-9ff3-bde95e827b62">
-      <nodes>
-        <classShapeMoniker Id="452ce94a-9bd2-4968-9a5f-a0ab1dba6b2e" />
-        <classShapeMoniker Id="722ccaeb-f35a-4a76-8d2f-850633dc444a" />
-      </nodes>
-    </inheritanceConnector>
-    <associationConnector edgePoints="[(9.875 : 4.53449625651042); (10.75 : 4.53449625651042)]" fixedFrom="NotFixed" fixedTo="NotFixed">
-      <AssociationMoniker Name="/ClientManagementDataContext/UserGroupBase/UserGroupBase_UserGroupUserGroup" />
-      <nodes>
-        <classShapeMoniker Id="452ce94a-9bd2-4968-9a5f-a0ab1dba6b2e" />
-        <classShapeMoniker Id="62262fbd-3de1-47dd-bbdd-05e982e88e29" />
-      </nodes>
-    </associationConnector>
-    <associationConnector edgePoints="[(9.875 : 4.20474812825521); (10.75 : 4.20474812825521)]" fixedFrom="NotFixed" fixedTo="NotFixed">
-      <AssociationMoniker Name="/ClientManagementDataContext/UserGroupBase/UserGroupBase_UserGroupUserGroup1" />
-      <nodes>
-        <classShapeMoniker Id="452ce94a-9bd2-4968-9a5f-a0ab1dba6b2e" />
-        <classShapeMoniker Id="62262fbd-3de1-47dd-bbdd-05e982e88e29" />
-      </nodes>
-    </associationConnector>
-    <associationConnector edgePoints="[(2.5 : 1.69399251302083); (2.875 : 2.06899251302083); (2.875 : 4.12102376302084); (3.75 : 4.12102376302084)]" fixedFrom="NotFixed" fixedTo="NotFixed">
-      <AssociationMoniker Name="/ClientManagementDataContext/ClientType/ClientType_Client" />
-      <nodes>
-        <classShapeMoniker Id="38891c77-8166-44c9-8dd5-da45900c45f3" />
-        <classShapeMoniker Id="c964402f-99b7-4355-b9ad-279a2a7cf692" />
-      </nodes>
-    </associationConnector>
-    <associationConnector edgePoints="[(2.5 : 2.72199625651042); (3.75 : 2.72199625651042)]" fixedFrom="NotFixed" fixedTo="NotFixed">
-      <AssociationMoniker Name="/ClientManagementDataContext/OperatingSystem/OperatingSystem_Client" />
-      <nodes>
-        <classShapeMoniker Id="cb6a29ca-7ef1-4721-9108-b64558f282a6" />
-        <classShapeMoniker Id="c964402f-99b7-4355-b9ad-279a2a7cf692" />
-      </nodes>
-    </associationConnector>
-    <associationConnector edgePoints="[(2.5 : 3.49801188151042); (3.75 : 3.49801188151042)]" fixedFrom="NotFixed" fixedTo="NotFixed">
-      <AssociationMoniker Name="/ClientManagementDataContext/Country/Country_Client" />
-      <nodes>
-        <classShapeMoniker Id="c7dfcb39-11e2-47ec-8a48-4e41e2901893" />
-        <classShapeMoniker Id="c964402f-99b7-4355-b9ad-279a2a7cf692" />
-      </nodes>
-    </associationConnector>
-    <associationConnector edgePoints="[(2.5 : 4.74120198567708); (3.75 : 4.74120198567708)]" fixedFrom="NotFixed" fixedTo="NotFixed">
-      <AssociationMoniker Name="/ClientManagementDataContext/ClientConfiguration/ClientConfiguration_Client" />
-      <nodes>
-        <classShapeMoniker Id="3aef9298-1092-45fa-bf96-8dd25d61c2f8" />
-        <classShapeMoniker Id="c964402f-99b7-4355-b9ad-279a2a7cf692" />
-      </nodes>
-    </associationConnector>
-  </nestedChildShapes>
-</ordesignerObjectsDiagram>
Index: branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/ClientManagement.designer.cs
===================================================================
--- branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/ClientManagement.designer.cs	(revision 7536)
+++ 	(revision )
@@ -1,2431 +1,0 @@
-﻿#pragma warning disable 1591
-//------------------------------------------------------------------------------
-// <auto-generated>
-//     This code was generated by a tool.
-//     Runtime Version:4.0.30319.261
-//
-//     Changes to this file may cause incorrect behavior and will be lost if
-//     the code is regenerated.
-// </auto-generated>
-//------------------------------------------------------------------------------
-
-namespace HeuristicLab.Services.Access.DataAccess
-{
-	using System.Data.Linq;
-	using System.Data.Linq.Mapping;
-	using System.Data;
-	using System.Collections.Generic;
-	using System.Reflection;
-	using System.Linq;
-	using System.Linq.Expressions;
-	using System.ComponentModel;
-	using System;
-	
-	
-	[global::System.Data.Linq.Mapping.DatabaseAttribute(Name="HeuristicLab.ClientManagement")]
-	public partial class ClientManagementDataContext : System.Data.Linq.DataContext
-	{
-		
-		private static System.Data.Linq.Mapping.MappingSource mappingSource = new AttributeMappingSource();
-		
-    #region Extensibility Method Definitions
-    partial void OnCreated();
-    partial void InsertResource(Resource instance);
-    partial void UpdateResource(Resource instance);
-    partial void DeleteResource(Resource instance);
-    partial void InsertResourceResourceGroup(ResourceResourceGroup instance);
-    partial void UpdateResourceResourceGroup(ResourceResourceGroup instance);
-    partial void DeleteResourceResourceGroup(ResourceResourceGroup instance);
-    partial void InsertClientLog(ClientLog instance);
-    partial void UpdateClientLog(ClientLog instance);
-    partial void DeleteClientLog(ClientLog instance);
-    partial void InsertClientError(ClientError instance);
-    partial void UpdateClientError(ClientError instance);
-    partial void DeleteClientError(ClientError instance);
-    partial void InsertUserGroupBase(UserGroupBase instance);
-    partial void UpdateUserGroupBase(UserGroupBase instance);
-    partial void DeleteUserGroupBase(UserGroupBase instance);
-    partial void InsertClientType(ClientType instance);
-    partial void UpdateClientType(ClientType instance);
-    partial void DeleteClientType(ClientType instance);
-    partial void InsertOperatingSystem(OperatingSystem instance);
-    partial void UpdateOperatingSystem(OperatingSystem instance);
-    partial void DeleteOperatingSystem(OperatingSystem instance);
-    partial void InsertCountry(Country instance);
-    partial void UpdateCountry(Country instance);
-    partial void DeleteCountry(Country instance);
-    partial void InsertClientConfiguration(ClientConfiguration instance);
-    partial void UpdateClientConfiguration(ClientConfiguration instance);
-    partial void DeleteClientConfiguration(ClientConfiguration instance);
-    partial void InsertPlugin(Plugin instance);
-    partial void UpdatePlugin(Plugin instance);
-    partial void DeletePlugin(Plugin instance);
-    partial void InsertResourcePlugin(ResourcePlugin instance);
-    partial void UpdateResourcePlugin(ResourcePlugin instance);
-    partial void DeleteResourcePlugin(ResourcePlugin instance);
-    partial void InsertUserGroupUserGroup(UserGroupUserGroup instance);
-    partial void UpdateUserGroupUserGroup(UserGroupUserGroup instance);
-    partial void DeleteUserGroupUserGroup(UserGroupUserGroup instance);
-    #endregion
-		
-		public ClientManagementDataContext() : 
-				base(global::HeuristicLab.Services.Access.DataAccess.Properties.Settings.Default.HeuristicLab_ClientManagementConnectionString, mappingSource)
-		{
-			OnCreated();
-		}
-		
-		public ClientManagementDataContext(string connection) : 
-				base(connection, mappingSource)
-		{
-			OnCreated();
-		}
-		
-		public ClientManagementDataContext(System.Data.IDbConnection connection) : 
-				base(connection, mappingSource)
-		{
-			OnCreated();
-		}
-		
-		public ClientManagementDataContext(string connection, System.Data.Linq.Mapping.MappingSource mappingSource) : 
-				base(connection, mappingSource)
-		{
-			OnCreated();
-		}
-		
-		public ClientManagementDataContext(System.Data.IDbConnection connection, System.Data.Linq.Mapping.MappingSource mappingSource) : 
-				base(connection, mappingSource)
-		{
-			OnCreated();
-		}
-		
-		public System.Data.Linq.Table<Resource> Resources
-		{
-			get
-			{
-				return this.GetTable<Resource>();
-			}
-		}
-		
-		public System.Data.Linq.Table<ResourceResourceGroup> ResourceResourceGroups
-		{
-			get
-			{
-				return this.GetTable<ResourceResourceGroup>();
-			}
-		}
-		
-		public System.Data.Linq.Table<ClientLog> ClientLogs
-		{
-			get
-			{
-				return this.GetTable<ClientLog>();
-			}
-		}
-		
-		public System.Data.Linq.Table<ClientError> ClientErrors
-		{
-			get
-			{
-				return this.GetTable<ClientError>();
-			}
-		}
-		
-		public System.Data.Linq.Table<UserGroupBase> UserGroupBases
-		{
-			get
-			{
-				return this.GetTable<UserGroupBase>();
-			}
-		}
-		
-		public System.Data.Linq.Table<ClientType> ClientTypes
-		{
-			get
-			{
-				return this.GetTable<ClientType>();
-			}
-		}
-		
-		public System.Data.Linq.Table<OperatingSystem> OperatingSystems
-		{
-			get
-			{
-				return this.GetTable<OperatingSystem>();
-			}
-		}
-		
-		public System.Data.Linq.Table<Country> Countries
-		{
-			get
-			{
-				return this.GetTable<Country>();
-			}
-		}
-		
-		public System.Data.Linq.Table<ClientConfiguration> ClientConfigurations
-		{
-			get
-			{
-				return this.GetTable<ClientConfiguration>();
-			}
-		}
-		
-		public System.Data.Linq.Table<Plugin> Plugins
-		{
-			get
-			{
-				return this.GetTable<Plugin>();
-			}
-		}
-		
-		public System.Data.Linq.Table<ResourcePlugin> ResourcePlugins
-		{
-			get
-			{
-				return this.GetTable<ResourcePlugin>();
-			}
-		}
-		
-		public System.Data.Linq.Table<UserGroupUserGroup> UserGroupUserGroups
-		{
-			get
-			{
-				return this.GetTable<UserGroupUserGroup>();
-			}
-		}
-	}
-	
-	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Resource")]
-	[global::System.Data.Linq.Mapping.InheritanceMappingAttribute(Code="Resource", Type=typeof(Resource), IsDefault=true)]
-	[global::System.Data.Linq.Mapping.InheritanceMappingAttribute(Code="Client", Type=typeof(Client))]
-	[global::System.Data.Linq.Mapping.InheritanceMappingAttribute(Code="ClientGroup", Type=typeof(ClientGroup))]
-	public partial class Resource : INotifyPropertyChanging, INotifyPropertyChanged
-	{
-		
-		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
-		
-		private System.Guid _Id;
-		
-		private string _Name;
-		
-		private string _Description;
-		
-		private string _Type;
-		
-		private EntitySet<ResourceResourceGroup> _ResourceResourceGroups;
-		
-		private EntitySet<ResourceResourceGroup> _ResourceResourceGroups1;
-		
-		private EntitySet<ClientLog> _ClientLogs;
-		
-		private EntitySet<ResourcePlugin> _ResourcePlugins;
-		
-    #region Extensibility Method Definitions
-    partial void OnLoaded();
-    partial void OnValidate(System.Data.Linq.ChangeAction action);
-    partial void OnCreated();
-    partial void OnIdChanging(System.Guid value);
-    partial void OnIdChanged();
-    partial void OnNameChanging(string value);
-    partial void OnNameChanged();
-    partial void OnDescriptionChanging(string value);
-    partial void OnDescriptionChanged();
-    partial void OnTypeChanging(string value);
-    partial void OnTypeChanged();
-    #endregion
-		
-		public Resource()
-		{
-			this._ResourceResourceGroups = new EntitySet<ResourceResourceGroup>(new Action<ResourceResourceGroup>(this.attach_ResourceResourceGroups), new Action<ResourceResourceGroup>(this.detach_ResourceResourceGroups));
-			this._ResourceResourceGroups1 = new EntitySet<ResourceResourceGroup>(new Action<ResourceResourceGroup>(this.attach_ResourceResourceGroups1), new Action<ResourceResourceGroup>(this.detach_ResourceResourceGroups1));
-			this._ClientLogs = new EntitySet<ClientLog>(new Action<ClientLog>(this.attach_ClientLogs), new Action<ClientLog>(this.detach_ClientLogs));
-			this._ResourcePlugins = new EntitySet<ResourcePlugin>(new Action<ResourcePlugin>(this.attach_ResourcePlugins), new Action<ResourcePlugin>(this.detach_ResourcePlugins));
-			OnCreated();
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", AutoSync=AutoSync.OnInsert, DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
-		public System.Guid Id
-		{
-			get
-			{
-				return this._Id;
-			}
-			set
-			{
-				if ((this._Id != value))
-				{
-					this.OnIdChanging(value);
-					this.SendPropertyChanging();
-					this._Id = value;
-					this.SendPropertyChanged("Id");
-					this.OnIdChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(MAX) NOT NULL", CanBeNull=false)]
-		public string Name
-		{
-			get
-			{
-				return this._Name;
-			}
-			set
-			{
-				if ((this._Name != value))
-				{
-					this.OnNameChanging(value);
-					this.SendPropertyChanging();
-					this._Name = value;
-					this.SendPropertyChanged("Name");
-					this.OnNameChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Description", DbType="NVarChar(MAX)", CanBeNull=false)]
-		public string Description
-		{
-			get
-			{
-				return this._Description;
-			}
-			set
-			{
-				if ((this._Description != value))
-				{
-					this.OnDescriptionChanging(value);
-					this.SendPropertyChanging();
-					this._Description = value;
-					this.SendPropertyChanged("Description");
-					this.OnDescriptionChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Type", DbType="NVarChar(MAX) NOT NULL", CanBeNull=false, IsDiscriminator=true)]
-		public string Type
-		{
-			get
-			{
-				return this._Type;
-			}
-			set
-			{
-				if ((this._Type != value))
-				{
-					this.OnTypeChanging(value);
-					this.SendPropertyChanging();
-					this._Type = value;
-					this.SendPropertyChanged("Type");
-					this.OnTypeChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="Resource_ResourceResourceGroup", Storage="_ResourceResourceGroups", ThisKey="Id", OtherKey="ResourceGroupId")]
-		public EntitySet<ResourceResourceGroup> ResourceResourceGroupsChilds
-		{
-			get
-			{
-				return this._ResourceResourceGroups;
-			}
-			set
-			{
-				this._ResourceResourceGroups.Assign(value);
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="Resource_ResourceResourceGroup1", Storage="_ResourceResourceGroups1", ThisKey="Id", OtherKey="ResourceId")]
-		public EntitySet<ResourceResourceGroup> ResourceResourceGroupsParents
-		{
-			get
-			{
-				return this._ResourceResourceGroups1;
-			}
-			set
-			{
-				this._ResourceResourceGroups1.Assign(value);
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="Resource_ClientLog", Storage="_ClientLogs", ThisKey="Id", OtherKey="ResourceId")]
-		public EntitySet<ClientLog> ClientLogs
-		{
-			get
-			{
-				return this._ClientLogs;
-			}
-			set
-			{
-				this._ClientLogs.Assign(value);
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="Resource_ResourcePlugin", Storage="_ResourcePlugins", ThisKey="Id", OtherKey="ResourceId")]
-		public EntitySet<ResourcePlugin> ResourcePlugins
-		{
-			get
-			{
-				return this._ResourcePlugins;
-			}
-			set
-			{
-				this._ResourcePlugins.Assign(value);
-			}
-		}
-		
-		public event PropertyChangingEventHandler PropertyChanging;
-		
-		public event PropertyChangedEventHandler PropertyChanged;
-		
-		protected virtual void SendPropertyChanging()
-		{
-			if ((this.PropertyChanging != null))
-			{
-				this.PropertyChanging(this, emptyChangingEventArgs);
-			}
-		}
-		
-		protected virtual void SendPropertyChanged(String propertyName)
-		{
-			if ((this.PropertyChanged != null))
-			{
-				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
-			}
-		}
-		
-		private void attach_ResourceResourceGroups(ResourceResourceGroup entity)
-		{
-			this.SendPropertyChanging();
-			entity.ParentResource = this;
-		}
-		
-		private void detach_ResourceResourceGroups(ResourceResourceGroup entity)
-		{
-			this.SendPropertyChanging();
-			entity.ParentResource = null;
-		}
-		
-		private void attach_ResourceResourceGroups1(ResourceResourceGroup entity)
-		{
-			this.SendPropertyChanging();
-			entity.Resource = this;
-		}
-		
-		private void detach_ResourceResourceGroups1(ResourceResourceGroup entity)
-		{
-			this.SendPropertyChanging();
-			entity.Resource = null;
-		}
-		
-		private void attach_ClientLogs(ClientLog entity)
-		{
-			this.SendPropertyChanging();
-			entity.Resource = this;
-		}
-		
-		private void detach_ClientLogs(ClientLog entity)
-		{
-			this.SendPropertyChanging();
-			entity.Resource = null;
-		}
-		
-		private void attach_ResourcePlugins(ResourcePlugin entity)
-		{
-			this.SendPropertyChanging();
-			entity.Resource = this;
-		}
-		
-		private void detach_ResourcePlugins(ResourcePlugin entity)
-		{
-			this.SendPropertyChanging();
-			entity.Resource = null;
-		}
-	}
-	
-	public partial class Client : Resource
-	{
-		
-		private string _HeuristicLabVersion;
-		
-		private System.Nullable<int> _MemorySize;
-		
-		private System.Nullable<System.DateTime> _Timestamp;
-		
-		private System.Nullable<int> _NumberOfCores;
-		
-		private string _ProcessorType;
-		
-		private System.Nullable<System.Guid> _ClientTypeId;
-		
-		private System.Nullable<System.Guid> _OperatingSystemId;
-		
-		private System.Nullable<System.Guid> _ClientConfigurationId;
-		
-		private System.Nullable<System.Guid> _CountryId;
-		
-		private System.Nullable<double> _PerformanceValue;
-		
-		private EntityRef<ClientType> _ClientType;
-		
-		private EntityRef<OperatingSystem> _OperatingSystem;
-		
-		private EntityRef<Country> _Country;
-		
-		private EntityRef<ClientConfiguration> _ClientConfiguration;
-		
-    #region Extensibility Method Definitions
-    partial void OnLoaded();
-    partial void OnValidate(System.Data.Linq.ChangeAction action);
-    partial void OnCreated();
-    partial void OnHeuristicLabVersionChanging(string value);
-    partial void OnHeuristicLabVersionChanged();
-    partial void OnMemorySizeChanging(System.Nullable<int> value);
-    partial void OnMemorySizeChanged();
-    partial void OnTimestampChanging(System.Nullable<System.DateTime> value);
-    partial void OnTimestampChanged();
-    partial void OnNumberOfCoresChanging(System.Nullable<int> value);
-    partial void OnNumberOfCoresChanged();
-    partial void OnProcessorTypeChanging(string value);
-    partial void OnProcessorTypeChanged();
-    partial void OnClientTypeIdChanging(System.Nullable<System.Guid> value);
-    partial void OnClientTypeIdChanged();
-    partial void OnOperatingSystemIdChanging(System.Nullable<System.Guid> value);
-    partial void OnOperatingSystemIdChanged();
-    partial void OnClientConfigurationIdChanging(System.Nullable<System.Guid> value);
-    partial void OnClientConfigurationIdChanged();
-    partial void OnCountryIdChanging(System.Nullable<System.Guid> value);
-    partial void OnCountryIdChanged();
-    partial void OnPerformanceValueChanging(System.Nullable<double> value);
-    partial void OnPerformanceValueChanged();
-    #endregion
-		
-		public Client()
-		{
-			this._ClientType = default(EntityRef<ClientType>);
-			this._OperatingSystem = default(EntityRef<OperatingSystem>);
-			this._Country = default(EntityRef<Country>);
-			this._ClientConfiguration = default(EntityRef<ClientConfiguration>);
-			OnCreated();
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_HeuristicLabVersion", DbType="NVarChar(MAX)", CanBeNull=false)]
-		public string HeuristicLabVersion
-		{
-			get
-			{
-				return this._HeuristicLabVersion;
-			}
-			set
-			{
-				if ((this._HeuristicLabVersion != value))
-				{
-					this.OnHeuristicLabVersionChanging(value);
-					this.SendPropertyChanging();
-					this._HeuristicLabVersion = value;
-					this.SendPropertyChanged("HeuristicLabVersion");
-					this.OnHeuristicLabVersionChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_MemorySize", DbType="Int")]
-		public System.Nullable<int> MemorySize
-		{
-			get
-			{
-				return this._MemorySize;
-			}
-			set
-			{
-				if ((this._MemorySize != value))
-				{
-					this.OnMemorySizeChanging(value);
-					this.SendPropertyChanging();
-					this._MemorySize = value;
-					this.SendPropertyChanged("MemorySize");
-					this.OnMemorySizeChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Timestamp", DbType="DateTime")]
-		public System.Nullable<System.DateTime> Timestamp
-		{
-			get
-			{
-				return this._Timestamp;
-			}
-			set
-			{
-				if ((this._Timestamp != value))
-				{
-					this.OnTimestampChanging(value);
-					this.SendPropertyChanging();
-					this._Timestamp = value;
-					this.SendPropertyChanged("Timestamp");
-					this.OnTimestampChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_NumberOfCores", DbType="Int")]
-		public System.Nullable<int> NumberOfCores
-		{
-			get
-			{
-				return this._NumberOfCores;
-			}
-			set
-			{
-				if ((this._NumberOfCores != value))
-				{
-					this.OnNumberOfCoresChanging(value);
-					this.SendPropertyChanging();
-					this._NumberOfCores = value;
-					this.SendPropertyChanged("NumberOfCores");
-					this.OnNumberOfCoresChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProcessorType", DbType="NVarChar(MAX)")]
-		public string ProcessorType
-		{
-			get
-			{
-				return this._ProcessorType;
-			}
-			set
-			{
-				if ((this._ProcessorType != value))
-				{
-					this.OnProcessorTypeChanging(value);
-					this.SendPropertyChanging();
-					this._ProcessorType = value;
-					this.SendPropertyChanged("ProcessorType");
-					this.OnProcessorTypeChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ClientTypeId", DbType="UniqueIdentifier")]
-		public System.Nullable<System.Guid> ClientTypeId
-		{
-			get
-			{
-				return this._ClientTypeId;
-			}
-			set
-			{
-				if ((this._ClientTypeId != value))
-				{
-					if (this._ClientType.HasLoadedOrAssignedValue)
-					{
-						throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
-					}
-					this.OnClientTypeIdChanging(value);
-					this.SendPropertyChanging();
-					this._ClientTypeId = value;
-					this.SendPropertyChanged("ClientTypeId");
-					this.OnClientTypeIdChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_OperatingSystemId", DbType="UniqueIdentifier")]
-		public System.Nullable<System.Guid> OperatingSystemId
-		{
-			get
-			{
-				return this._OperatingSystemId;
-			}
-			set
-			{
-				if ((this._OperatingSystemId != value))
-				{
-					if (this._OperatingSystem.HasLoadedOrAssignedValue)
-					{
-						throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
-					}
-					this.OnOperatingSystemIdChanging(value);
-					this.SendPropertyChanging();
-					this._OperatingSystemId = value;
-					this.SendPropertyChanged("OperatingSystemId");
-					this.OnOperatingSystemIdChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ClientConfigurationId", DbType="UniqueIdentifier")]
-		public System.Nullable<System.Guid> ClientConfigurationId
-		{
-			get
-			{
-				return this._ClientConfigurationId;
-			}
-			set
-			{
-				if ((this._ClientConfigurationId != value))
-				{
-					if (this._ClientConfiguration.HasLoadedOrAssignedValue)
-					{
-						throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
-					}
-					this.OnClientConfigurationIdChanging(value);
-					this.SendPropertyChanging();
-					this._ClientConfigurationId = value;
-					this.SendPropertyChanged("ClientConfigurationId");
-					this.OnClientConfigurationIdChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CountryId", DbType="UniqueIdentifier")]
-		public System.Nullable<System.Guid> CountryId
-		{
-			get
-			{
-				return this._CountryId;
-			}
-			set
-			{
-				if ((this._CountryId != value))
-				{
-					if (this._Country.HasLoadedOrAssignedValue)
-					{
-						throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
-					}
-					this.OnCountryIdChanging(value);
-					this.SendPropertyChanging();
-					this._CountryId = value;
-					this.SendPropertyChanged("CountryId");
-					this.OnCountryIdChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PerformanceValue", DbType="real")]
-		public System.Nullable<double> PerformanceValue
-		{
-			get
-			{
-				return this._PerformanceValue;
-			}
-			set
-			{
-				if ((this._PerformanceValue != value))
-				{
-					this.OnPerformanceValueChanging(value);
-					this.SendPropertyChanging();
-					this._PerformanceValue = value;
-					this.SendPropertyChanged("PerformanceValue");
-					this.OnPerformanceValueChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="ClientType_Client", Storage="_ClientType", ThisKey="ClientTypeId", OtherKey="Id", IsForeignKey=true)]
-		public ClientType ClientType
-		{
-			get
-			{
-				return this._ClientType.Entity;
-			}
-			set
-			{
-				if ((this._ClientType.Entity != value))
-				{
-					this.SendPropertyChanging();
-					this._ClientType.Entity = value;
-					this.SendPropertyChanged("ClientType");
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="OperatingSystem_Client", Storage="_OperatingSystem", ThisKey="OperatingSystemId", OtherKey="Id", IsForeignKey=true)]
-		public OperatingSystem OperatingSystem
-		{
-			get
-			{
-				return this._OperatingSystem.Entity;
-			}
-			set
-			{
-				if ((this._OperatingSystem.Entity != value))
-				{
-					this.SendPropertyChanging();
-					this._OperatingSystem.Entity = value;
-					this.SendPropertyChanged("OperatingSystem");
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="Country_Client", Storage="_Country", ThisKey="CountryId", OtherKey="Id", IsForeignKey=true)]
-		public Country Country
-		{
-			get
-			{
-				return this._Country.Entity;
-			}
-			set
-			{
-				if ((this._Country.Entity != value))
-				{
-					this.SendPropertyChanging();
-					this._Country.Entity = value;
-					this.SendPropertyChanged("Country");
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="ClientConfiguration_Client", Storage="_ClientConfiguration", ThisKey="ClientConfigurationId", OtherKey="Id", IsForeignKey=true)]
-		public ClientConfiguration ClientConfiguration
-		{
-			get
-			{
-				return this._ClientConfiguration.Entity;
-			}
-			set
-			{
-				if ((this._ClientConfiguration.Entity != value))
-				{
-					this.SendPropertyChanging();
-					this._ClientConfiguration.Entity = value;
-					this.SendPropertyChanged("ClientConfiguration");
-				}
-			}
-		}
-	}
-	
-	public partial class ClientGroup : Resource
-	{
-		
-    #region Extensibility Method Definitions
-    partial void OnLoaded();
-    partial void OnValidate(System.Data.Linq.ChangeAction action);
-    partial void OnCreated();
-    #endregion
-		
-		public ClientGroup()
-		{
-			OnCreated();
-		}
-	}
-	
-	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.ResourceResourceGroup")]
-	public partial class ResourceResourceGroup : INotifyPropertyChanging, INotifyPropertyChanged
-	{
-		
-		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
-		
-		private System.Guid _ResourceId;
-		
-		private System.Guid _ResourceGroupId;
-		
-		private EntityRef<Resource> _Resource;
-		
-		private EntityRef<Resource> _Resource1;
-		
-    #region Extensibility Method Definitions
-    partial void OnLoaded();
-    partial void OnValidate(System.Data.Linq.ChangeAction action);
-    partial void OnCreated();
-    partial void OnResourceIdChanging(System.Guid value);
-    partial void OnResourceIdChanged();
-    partial void OnResourceGroupIdChanging(System.Guid value);
-    partial void OnResourceGroupIdChanged();
-    #endregion
-		
-		public ResourceResourceGroup()
-		{
-			this._Resource = default(EntityRef<Resource>);
-			this._Resource1 = default(EntityRef<Resource>);
-			OnCreated();
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResourceId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
-		public System.Guid ResourceId
-		{
-			get
-			{
-				return this._ResourceId;
-			}
-			set
-			{
-				if ((this._ResourceId != value))
-				{
-					if (this._Resource1.HasLoadedOrAssignedValue)
-					{
-						throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
-					}
-					this.OnResourceIdChanging(value);
-					this.SendPropertyChanging();
-					this._ResourceId = value;
-					this.SendPropertyChanged("ResourceId");
-					this.OnResourceIdChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResourceGroupId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
-		public System.Guid ResourceGroupId
-		{
-			get
-			{
-				return this._ResourceGroupId;
-			}
-			set
-			{
-				if ((this._ResourceGroupId != value))
-				{
-					if (this._Resource.HasLoadedOrAssignedValue)
-					{
-						throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
-					}
-					this.OnResourceGroupIdChanging(value);
-					this.SendPropertyChanging();
-					this._ResourceGroupId = value;
-					this.SendPropertyChanged("ResourceGroupId");
-					this.OnResourceGroupIdChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="Resource_ResourceResourceGroup", Storage="_Resource", ThisKey="ResourceGroupId", OtherKey="Id", IsForeignKey=true)]
-		public Resource ParentResource
-		{
-			get
-			{
-				return this._Resource.Entity;
-			}
-			set
-			{
-				Resource previousValue = this._Resource.Entity;
-				if (((previousValue != value) 
-							|| (this._Resource.HasLoadedOrAssignedValue == false)))
-				{
-					this.SendPropertyChanging();
-					if ((previousValue != null))
-					{
-						this._Resource.Entity = null;
-						previousValue.ResourceResourceGroupsChilds.Remove(this);
-					}
-					this._Resource.Entity = value;
-					if ((value != null))
-					{
-						value.ResourceResourceGroupsChilds.Add(this);
-						this._ResourceGroupId = value.Id;
-					}
-					else
-					{
-						this._ResourceGroupId = default(System.Guid);
-					}
-					this.SendPropertyChanged("ParentResource");
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="Resource_ResourceResourceGroup1", Storage="_Resource1", ThisKey="ResourceId", OtherKey="Id", IsForeignKey=true)]
-		public Resource Resource
-		{
-			get
-			{
-				return this._Resource1.Entity;
-			}
-			set
-			{
-				Resource previousValue = this._Resource1.Entity;
-				if (((previousValue != value) 
-							|| (this._Resource1.HasLoadedOrAssignedValue == false)))
-				{
-					this.SendPropertyChanging();
-					if ((previousValue != null))
-					{
-						this._Resource1.Entity = null;
-						previousValue.ResourceResourceGroupsParents.Remove(this);
-					}
-					this._Resource1.Entity = value;
-					if ((value != null))
-					{
-						value.ResourceResourceGroupsParents.Add(this);
-						this._ResourceId = value.Id;
-					}
-					else
-					{
-						this._ResourceId = default(System.Guid);
-					}
-					this.SendPropertyChanged("Resource");
-				}
-			}
-		}
-		
-		public event PropertyChangingEventHandler PropertyChanging;
-		
-		public event PropertyChangedEventHandler PropertyChanged;
-		
-		protected virtual void SendPropertyChanging()
-		{
-			if ((this.PropertyChanging != null))
-			{
-				this.PropertyChanging(this, emptyChangingEventArgs);
-			}
-		}
-		
-		protected virtual void SendPropertyChanged(String propertyName)
-		{
-			if ((this.PropertyChanged != null))
-			{
-				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
-			}
-		}
-	}
-	
-	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.ClientLog")]
-	public partial class ClientLog : INotifyPropertyChanging, INotifyPropertyChanged
-	{
-		
-		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
-		
-		private System.DateTime _Timestamp;
-		
-		private System.Guid _ResourceId;
-		
-		private string _Message;
-		
-		private EntityRef<Resource> _Resource;
-		
-    #region Extensibility Method Definitions
-    partial void OnLoaded();
-    partial void OnValidate(System.Data.Linq.ChangeAction action);
-    partial void OnCreated();
-    partial void OnTimestampChanging(System.DateTime value);
-    partial void OnTimestampChanged();
-    partial void OnResourceIdChanging(System.Guid value);
-    partial void OnResourceIdChanged();
-    partial void OnMessageChanging(string value);
-    partial void OnMessageChanged();
-    #endregion
-		
-		public ClientLog()
-		{
-			this._Resource = default(EntityRef<Resource>);
-			OnCreated();
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Timestamp", DbType="DateTime NOT NULL", IsPrimaryKey=true)]
-		public System.DateTime Timestamp
-		{
-			get
-			{
-				return this._Timestamp;
-			}
-			set
-			{
-				if ((this._Timestamp != value))
-				{
-					this.OnTimestampChanging(value);
-					this.SendPropertyChanging();
-					this._Timestamp = value;
-					this.SendPropertyChanged("Timestamp");
-					this.OnTimestampChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResourceId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
-		public System.Guid ResourceId
-		{
-			get
-			{
-				return this._ResourceId;
-			}
-			set
-			{
-				if ((this._ResourceId != value))
-				{
-					if (this._Resource.HasLoadedOrAssignedValue)
-					{
-						throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
-					}
-					this.OnResourceIdChanging(value);
-					this.SendPropertyChanging();
-					this._ResourceId = value;
-					this.SendPropertyChanged("ResourceId");
-					this.OnResourceIdChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Message", DbType="NVarChar(MAX)")]
-		public string Message
-		{
-			get
-			{
-				return this._Message;
-			}
-			set
-			{
-				if ((this._Message != value))
-				{
-					this.OnMessageChanging(value);
-					this.SendPropertyChanging();
-					this._Message = value;
-					this.SendPropertyChanged("Message");
-					this.OnMessageChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="Resource_ClientLog", Storage="_Resource", ThisKey="ResourceId", OtherKey="Id", IsForeignKey=true)]
-		public Resource Resource
-		{
-			get
-			{
-				return this._Resource.Entity;
-			}
-			set
-			{
-				Resource previousValue = this._Resource.Entity;
-				if (((previousValue != value) 
-							|| (this._Resource.HasLoadedOrAssignedValue == false)))
-				{
-					this.SendPropertyChanging();
-					if ((previousValue != null))
-					{
-						this._Resource.Entity = null;
-						previousValue.ClientLogs.Remove(this);
-					}
-					this._Resource.Entity = value;
-					if ((value != null))
-					{
-						value.ClientLogs.Add(this);
-						this._ResourceId = value.Id;
-					}
-					else
-					{
-						this._ResourceId = default(System.Guid);
-					}
-					this.SendPropertyChanged("Resource");
-				}
-			}
-		}
-		
-		public event PropertyChangingEventHandler PropertyChanging;
-		
-		public event PropertyChangedEventHandler PropertyChanged;
-		
-		protected virtual void SendPropertyChanging()
-		{
-			if ((this.PropertyChanging != null))
-			{
-				this.PropertyChanging(this, emptyChangingEventArgs);
-			}
-		}
-		
-		protected virtual void SendPropertyChanged(String propertyName)
-		{
-			if ((this.PropertyChanged != null))
-			{
-				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
-			}
-		}
-	}
-	
-	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.ClientError")]
-	public partial class ClientError : INotifyPropertyChanging, INotifyPropertyChanged
-	{
-		
-		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
-		
-		private System.Guid _Id;
-		
-		private System.DateTime _Timestamp;
-		
-		private string _Exception;
-		
-		private string _UserComment;
-		
-		private string _ConfigDump;
-		
-		private System.Nullable<System.Guid> _ClientId;
-		
-		private System.Nullable<System.Guid> _UserId;
-		
-    #region Extensibility Method Definitions
-    partial void OnLoaded();
-    partial void OnValidate(System.Data.Linq.ChangeAction action);
-    partial void OnCreated();
-    partial void OnIdChanging(System.Guid value);
-    partial void OnIdChanged();
-    partial void OnTimestampChanging(System.DateTime value);
-    partial void OnTimestampChanged();
-    partial void OnExceptionChanging(string value);
-    partial void OnExceptionChanged();
-    partial void OnUserCommentChanging(string value);
-    partial void OnUserCommentChanged();
-    partial void OnConfigDumpChanging(string value);
-    partial void OnConfigDumpChanged();
-    partial void OnClientIdChanging(System.Nullable<System.Guid> value);
-    partial void OnClientIdChanged();
-    partial void OnUserIdChanging(System.Nullable<System.Guid> value);
-    partial void OnUserIdChanged();
-    #endregion
-		
-		public ClientError()
-		{
-			OnCreated();
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
-		public System.Guid Id
-		{
-			get
-			{
-				return this._Id;
-			}
-			set
-			{
-				if ((this._Id != value))
-				{
-					this.OnIdChanging(value);
-					this.SendPropertyChanging();
-					this._Id = value;
-					this.SendPropertyChanged("Id");
-					this.OnIdChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Timestamp", DbType="DateTime NOT NULL")]
-		public System.DateTime Timestamp
-		{
-			get
-			{
-				return this._Timestamp;
-			}
-			set
-			{
-				if ((this._Timestamp != value))
-				{
-					this.OnTimestampChanging(value);
-					this.SendPropertyChanging();
-					this._Timestamp = value;
-					this.SendPropertyChanged("Timestamp");
-					this.OnTimestampChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Exception", DbType="NVarChar(MAX)")]
-		public string Exception
-		{
-			get
-			{
-				return this._Exception;
-			}
-			set
-			{
-				if ((this._Exception != value))
-				{
-					this.OnExceptionChanging(value);
-					this.SendPropertyChanging();
-					this._Exception = value;
-					this.SendPropertyChanged("Exception");
-					this.OnExceptionChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserComment", DbType="NVarChar(MAX)")]
-		public string UserComment
-		{
-			get
-			{
-				return this._UserComment;
-			}
-			set
-			{
-				if ((this._UserComment != value))
-				{
-					this.OnUserCommentChanging(value);
-					this.SendPropertyChanging();
-					this._UserComment = value;
-					this.SendPropertyChanged("UserComment");
-					this.OnUserCommentChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ConfigDump", DbType="NVarChar(MAX)")]
-		public string ConfigDump
-		{
-			get
-			{
-				return this._ConfigDump;
-			}
-			set
-			{
-				if ((this._ConfigDump != value))
-				{
-					this.OnConfigDumpChanging(value);
-					this.SendPropertyChanging();
-					this._ConfigDump = value;
-					this.SendPropertyChanged("ConfigDump");
-					this.OnConfigDumpChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ClientId", DbType="UniqueIdentifier")]
-		public System.Nullable<System.Guid> ClientId
-		{
-			get
-			{
-				return this._ClientId;
-			}
-			set
-			{
-				if ((this._ClientId != value))
-				{
-					this.OnClientIdChanging(value);
-					this.SendPropertyChanging();
-					this._ClientId = value;
-					this.SendPropertyChanged("ClientId");
-					this.OnClientIdChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserId", DbType="UniqueIdentifier")]
-		public System.Nullable<System.Guid> UserId
-		{
-			get
-			{
-				return this._UserId;
-			}
-			set
-			{
-				if ((this._UserId != value))
-				{
-					this.OnUserIdChanging(value);
-					this.SendPropertyChanging();
-					this._UserId = value;
-					this.SendPropertyChanged("UserId");
-					this.OnUserIdChanged();
-				}
-			}
-		}
-		
-		public event PropertyChangingEventHandler PropertyChanging;
-		
-		public event PropertyChangedEventHandler PropertyChanged;
-		
-		protected virtual void SendPropertyChanging()
-		{
-			if ((this.PropertyChanging != null))
-			{
-				this.PropertyChanging(this, emptyChangingEventArgs);
-			}
-		}
-		
-		protected virtual void SendPropertyChanged(String propertyName)
-		{
-			if ((this.PropertyChanged != null))
-			{
-				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
-			}
-		}
-	}
-	
-	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.UserGroup")]
-	[global::System.Data.Linq.Mapping.InheritanceMappingAttribute(Code="UserGroupBase", Type=typeof(UserGroupBase), IsDefault=true)]
-	[global::System.Data.Linq.Mapping.InheritanceMappingAttribute(Code="User", Type=typeof(User))]
-	[global::System.Data.Linq.Mapping.InheritanceMappingAttribute(Code="UserGroup", Type=typeof(UserGroup))]
-	public partial class UserGroupBase : INotifyPropertyChanging, INotifyPropertyChanged
-	{
-		
-		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
-		
-		private System.Guid _Id;
-		
-		private string _Type;
-		
-		private EntitySet<UserGroupUserGroup> _UserGroupUserGroups;
-		
-		private EntitySet<UserGroupUserGroup> _UserGroupUserGroups1;
-		
-    #region Extensibility Method Definitions
-    partial void OnLoaded();
-    partial void OnValidate(System.Data.Linq.ChangeAction action);
-    partial void OnCreated();
-    partial void OnIdChanging(System.Guid value);
-    partial void OnIdChanged();
-    partial void OnTypeChanging(string value);
-    partial void OnTypeChanged();
-    #endregion
-		
-		public UserGroupBase()
-		{
-			this._UserGroupUserGroups = new EntitySet<UserGroupUserGroup>(new Action<UserGroupUserGroup>(this.attach_UserGroupUserGroups), new Action<UserGroupUserGroup>(this.detach_UserGroupUserGroups));
-			this._UserGroupUserGroups1 = new EntitySet<UserGroupUserGroup>(new Action<UserGroupUserGroup>(this.attach_UserGroupUserGroups1), new Action<UserGroupUserGroup>(this.detach_UserGroupUserGroups1));
-			OnCreated();
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
-		public System.Guid Id
-		{
-			get
-			{
-				return this._Id;
-			}
-			set
-			{
-				if ((this._Id != value))
-				{
-					this.OnIdChanging(value);
-					this.SendPropertyChanging();
-					this._Id = value;
-					this.SendPropertyChanged("Id");
-					this.OnIdChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Type", DbType="NVarChar(10) NOT NULL", CanBeNull=false, IsDiscriminator=true)]
-		public string Type
-		{
-			get
-			{
-				return this._Type;
-			}
-			set
-			{
-				if ((this._Type != value))
-				{
-					this.OnTypeChanging(value);
-					this.SendPropertyChanging();
-					this._Type = value;
-					this.SendPropertyChanged("Type");
-					this.OnTypeChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="UserGroupBase_UserGroupUserGroup", Storage="_UserGroupUserGroups", ThisKey="Id", OtherKey="UserGroupId")]
-		public EntitySet<UserGroupUserGroup> UserGroupUserGroupsChilds
-		{
-			get
-			{
-				return this._UserGroupUserGroups;
-			}
-			set
-			{
-				this._UserGroupUserGroups.Assign(value);
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="UserGroupBase_UserGroupUserGroup1", Storage="_UserGroupUserGroups1", ThisKey="Id", OtherKey="UserGroupUserGroupId")]
-		public EntitySet<UserGroupUserGroup> UserGroupUserGroupsParents
-		{
-			get
-			{
-				return this._UserGroupUserGroups1;
-			}
-			set
-			{
-				this._UserGroupUserGroups1.Assign(value);
-			}
-		}
-		
-		public event PropertyChangingEventHandler PropertyChanging;
-		
-		public event PropertyChangedEventHandler PropertyChanged;
-		
-		protected virtual void SendPropertyChanging()
-		{
-			if ((this.PropertyChanging != null))
-			{
-				this.PropertyChanging(this, emptyChangingEventArgs);
-			}
-		}
-		
-		protected virtual void SendPropertyChanged(String propertyName)
-		{
-			if ((this.PropertyChanged != null))
-			{
-				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
-			}
-		}
-		
-		private void attach_UserGroupUserGroups(UserGroupUserGroup entity)
-		{
-			this.SendPropertyChanging();
-			entity.UserGroup = this;
-		}
-		
-		private void detach_UserGroupUserGroups(UserGroupUserGroup entity)
-		{
-			this.SendPropertyChanging();
-			entity.UserGroup = null;
-		}
-		
-		private void attach_UserGroupUserGroups1(UserGroupUserGroup entity)
-		{
-			this.SendPropertyChanging();
-			entity.UserGroupBase = this;
-		}
-		
-		private void detach_UserGroupUserGroups1(UserGroupUserGroup entity)
-		{
-			this.SendPropertyChanging();
-			entity.UserGroupBase = null;
-		}
-	}
-	
-	public partial class User : UserGroupBase
-	{
-		
-		private string _FullName;
-		
-    #region Extensibility Method Definitions
-    partial void OnLoaded();
-    partial void OnValidate(System.Data.Linq.ChangeAction action);
-    partial void OnCreated();
-    partial void OnFullNameChanging(string value);
-    partial void OnFullNameChanged();
-    #endregion
-		
-		public User()
-		{
-			OnCreated();
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_FullName", DbType="NVarChar(MAX)")]
-		public string FullName
-		{
-			get
-			{
-				return this._FullName;
-			}
-			set
-			{
-				if ((this._FullName != value))
-				{
-					this.OnFullNameChanging(value);
-					this.SendPropertyChanging();
-					this._FullName = value;
-					this.SendPropertyChanged("FullName");
-					this.OnFullNameChanged();
-				}
-			}
-		}
-	}
-	
-	public partial class UserGroup : UserGroupBase
-	{
-		
-		private string _Name;
-		
-    #region Extensibility Method Definitions
-    partial void OnLoaded();
-    partial void OnValidate(System.Data.Linq.ChangeAction action);
-    partial void OnCreated();
-    partial void OnNameChanging(string value);
-    partial void OnNameChanged();
-    #endregion
-		
-		public UserGroup()
-		{
-			OnCreated();
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(MAX)")]
-		public string Name
-		{
-			get
-			{
-				return this._Name;
-			}
-			set
-			{
-				if ((this._Name != value))
-				{
-					this.OnNameChanging(value);
-					this.SendPropertyChanging();
-					this._Name = value;
-					this.SendPropertyChanged("Name");
-					this.OnNameChanged();
-				}
-			}
-		}
-	}
-	
-	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.ClientType")]
-	public partial class ClientType : INotifyPropertyChanging, INotifyPropertyChanged
-	{
-		
-		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
-		
-		private System.Guid _Id;
-		
-		private string _Name;
-		
-    #region Extensibility Method Definitions
-    partial void OnLoaded();
-    partial void OnValidate(System.Data.Linq.ChangeAction action);
-    partial void OnCreated();
-    partial void OnIdChanging(System.Guid value);
-    partial void OnIdChanged();
-    partial void OnNameChanging(string value);
-    partial void OnNameChanged();
-    #endregion
-		
-		public ClientType()
-		{
-			OnCreated();
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
-		public System.Guid Id
-		{
-			get
-			{
-				return this._Id;
-			}
-			set
-			{
-				if ((this._Id != value))
-				{
-					this.OnIdChanging(value);
-					this.SendPropertyChanging();
-					this._Id = value;
-					this.SendPropertyChanged("Id");
-					this.OnIdChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(MAX) NOT NULL", CanBeNull=false)]
-		public string Name
-		{
-			get
-			{
-				return this._Name;
-			}
-			set
-			{
-				if ((this._Name != value))
-				{
-					this.OnNameChanging(value);
-					this.SendPropertyChanging();
-					this._Name = value;
-					this.SendPropertyChanged("Name");
-					this.OnNameChanged();
-				}
-			}
-		}
-		
-		public event PropertyChangingEventHandler PropertyChanging;
-		
-		public event PropertyChangedEventHandler PropertyChanged;
-		
-		protected virtual void SendPropertyChanging()
-		{
-			if ((this.PropertyChanging != null))
-			{
-				this.PropertyChanging(this, emptyChangingEventArgs);
-			}
-		}
-		
-		protected virtual void SendPropertyChanged(String propertyName)
-		{
-			if ((this.PropertyChanged != null))
-			{
-				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
-			}
-		}
-	}
-	
-	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.OperatingSystem")]
-	public partial class OperatingSystem : INotifyPropertyChanging, INotifyPropertyChanged
-	{
-		
-		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
-		
-		private System.Guid _Id;
-		
-		private string _Name;
-		
-    #region Extensibility Method Definitions
-    partial void OnLoaded();
-    partial void OnValidate(System.Data.Linq.ChangeAction action);
-    partial void OnCreated();
-    partial void OnIdChanging(System.Guid value);
-    partial void OnIdChanged();
-    partial void OnNameChanging(string value);
-    partial void OnNameChanged();
-    #endregion
-		
-		public OperatingSystem()
-		{
-			OnCreated();
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
-		public System.Guid Id
-		{
-			get
-			{
-				return this._Id;
-			}
-			set
-			{
-				if ((this._Id != value))
-				{
-					this.OnIdChanging(value);
-					this.SendPropertyChanging();
-					this._Id = value;
-					this.SendPropertyChanged("Id");
-					this.OnIdChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(MAX) NOT NULL", CanBeNull=false)]
-		public string Name
-		{
-			get
-			{
-				return this._Name;
-			}
-			set
-			{
-				if ((this._Name != value))
-				{
-					this.OnNameChanging(value);
-					this.SendPropertyChanging();
-					this._Name = value;
-					this.SendPropertyChanged("Name");
-					this.OnNameChanged();
-				}
-			}
-		}
-		
-		public event PropertyChangingEventHandler PropertyChanging;
-		
-		public event PropertyChangedEventHandler PropertyChanged;
-		
-		protected virtual void SendPropertyChanging()
-		{
-			if ((this.PropertyChanging != null))
-			{
-				this.PropertyChanging(this, emptyChangingEventArgs);
-			}
-		}
-		
-		protected virtual void SendPropertyChanged(String propertyName)
-		{
-			if ((this.PropertyChanged != null))
-			{
-				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
-			}
-		}
-	}
-	
-	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Country")]
-	public partial class Country : INotifyPropertyChanging, INotifyPropertyChanged
-	{
-		
-		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
-		
-		private System.Guid _Id;
-		
-		private string _Name;
-		
-    #region Extensibility Method Definitions
-    partial void OnLoaded();
-    partial void OnValidate(System.Data.Linq.ChangeAction action);
-    partial void OnCreated();
-    partial void OnIdChanging(System.Guid value);
-    partial void OnIdChanged();
-    partial void OnNameChanging(string value);
-    partial void OnNameChanged();
-    #endregion
-		
-		public Country()
-		{
-			OnCreated();
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
-		public System.Guid Id
-		{
-			get
-			{
-				return this._Id;
-			}
-			set
-			{
-				if ((this._Id != value))
-				{
-					this.OnIdChanging(value);
-					this.SendPropertyChanging();
-					this._Id = value;
-					this.SendPropertyChanged("Id");
-					this.OnIdChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(MAX) NOT NULL", CanBeNull=false)]
-		public string Name
-		{
-			get
-			{
-				return this._Name;
-			}
-			set
-			{
-				if ((this._Name != value))
-				{
-					this.OnNameChanging(value);
-					this.SendPropertyChanging();
-					this._Name = value;
-					this.SendPropertyChanged("Name");
-					this.OnNameChanged();
-				}
-			}
-		}
-		
-		public event PropertyChangingEventHandler PropertyChanging;
-		
-		public event PropertyChangedEventHandler PropertyChanged;
-		
-		protected virtual void SendPropertyChanging()
-		{
-			if ((this.PropertyChanging != null))
-			{
-				this.PropertyChanging(this, emptyChangingEventArgs);
-			}
-		}
-		
-		protected virtual void SendPropertyChanged(String propertyName)
-		{
-			if ((this.PropertyChanged != null))
-			{
-				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
-			}
-		}
-	}
-	
-	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.ClientConfiguration")]
-	public partial class ClientConfiguration : INotifyPropertyChanging, INotifyPropertyChanged
-	{
-		
-		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
-		
-		private System.Guid _Id;
-		
-		private string _Hash;
-		
-		private string _Description;
-		
-    #region Extensibility Method Definitions
-    partial void OnLoaded();
-    partial void OnValidate(System.Data.Linq.ChangeAction action);
-    partial void OnCreated();
-    partial void OnIdChanging(System.Guid value);
-    partial void OnIdChanged();
-    partial void OnHashChanging(string value);
-    partial void OnHashChanged();
-    partial void OnDescriptionChanging(string value);
-    partial void OnDescriptionChanged();
-    #endregion
-		
-		public ClientConfiguration()
-		{
-			OnCreated();
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
-		public System.Guid Id
-		{
-			get
-			{
-				return this._Id;
-			}
-			set
-			{
-				if ((this._Id != value))
-				{
-					this.OnIdChanging(value);
-					this.SendPropertyChanging();
-					this._Id = value;
-					this.SendPropertyChanged("Id");
-					this.OnIdChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Hash", DbType="NVarChar(MAX) NOT NULL", CanBeNull=false)]
-		public string Hash
-		{
-			get
-			{
-				return this._Hash;
-			}
-			set
-			{
-				if ((this._Hash != value))
-				{
-					this.OnHashChanging(value);
-					this.SendPropertyChanging();
-					this._Hash = value;
-					this.SendPropertyChanged("Hash");
-					this.OnHashChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Description", DbType="NVarChar(MAX)")]
-		public string Description
-		{
-			get
-			{
-				return this._Description;
-			}
-			set
-			{
-				if ((this._Description != value))
-				{
-					this.OnDescriptionChanging(value);
-					this.SendPropertyChanging();
-					this._Description = value;
-					this.SendPropertyChanged("Description");
-					this.OnDescriptionChanged();
-				}
-			}
-		}
-		
-		public event PropertyChangingEventHandler PropertyChanging;
-		
-		public event PropertyChangedEventHandler PropertyChanged;
-		
-		protected virtual void SendPropertyChanging()
-		{
-			if ((this.PropertyChanging != null))
-			{
-				this.PropertyChanging(this, emptyChangingEventArgs);
-			}
-		}
-		
-		protected virtual void SendPropertyChanged(String propertyName)
-		{
-			if ((this.PropertyChanged != null))
-			{
-				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
-			}
-		}
-	}
-	
-	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.Plugin")]
-	public partial class Plugin : INotifyPropertyChanging, INotifyPropertyChanged
-	{
-		
-		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
-		
-		private System.Guid _Id;
-		
-		private string _Name;
-		
-		private string _StrongName;
-		
-		private string _Version;
-		
-		private EntitySet<ResourcePlugin> _ResourcePlugins;
-		
-    #region Extensibility Method Definitions
-    partial void OnLoaded();
-    partial void OnValidate(System.Data.Linq.ChangeAction action);
-    partial void OnCreated();
-    partial void OnIdChanging(System.Guid value);
-    partial void OnIdChanged();
-    partial void OnNameChanging(string value);
-    partial void OnNameChanged();
-    partial void OnStrongNameChanging(string value);
-    partial void OnStrongNameChanged();
-    partial void OnVersionChanging(string value);
-    partial void OnVersionChanged();
-    #endregion
-		
-		public Plugin()
-		{
-			this._ResourcePlugins = new EntitySet<ResourcePlugin>(new Action<ResourcePlugin>(this.attach_ResourcePlugins), new Action<ResourcePlugin>(this.detach_ResourcePlugins));
-			OnCreated();
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Id", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true, IsDbGenerated=true)]
-		public System.Guid Id
-		{
-			get
-			{
-				return this._Id;
-			}
-			set
-			{
-				if ((this._Id != value))
-				{
-					this.OnIdChanging(value);
-					this.SendPropertyChanging();
-					this._Id = value;
-					this.SendPropertyChanged("Id");
-					this.OnIdChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(MAX) NOT NULL", CanBeNull=false)]
-		public string Name
-		{
-			get
-			{
-				return this._Name;
-			}
-			set
-			{
-				if ((this._Name != value))
-				{
-					this.OnNameChanging(value);
-					this.SendPropertyChanging();
-					this._Name = value;
-					this.SendPropertyChanged("Name");
-					this.OnNameChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_StrongName", DbType="NVarChar(MAX)")]
-		public string StrongName
-		{
-			get
-			{
-				return this._StrongName;
-			}
-			set
-			{
-				if ((this._StrongName != value))
-				{
-					this.OnStrongNameChanging(value);
-					this.SendPropertyChanging();
-					this._StrongName = value;
-					this.SendPropertyChanged("StrongName");
-					this.OnStrongNameChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Version", DbType="NVarChar(20) NOT NULL", CanBeNull=false)]
-		public string Version
-		{
-			get
-			{
-				return this._Version;
-			}
-			set
-			{
-				if ((this._Version != value))
-				{
-					this.OnVersionChanging(value);
-					this.SendPropertyChanging();
-					this._Version = value;
-					this.SendPropertyChanged("Version");
-					this.OnVersionChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="Plugin_ResourcePlugin", Storage="_ResourcePlugins", ThisKey="Id", OtherKey="PluginId")]
-		public EntitySet<ResourcePlugin> ResourcePlugins
-		{
-			get
-			{
-				return this._ResourcePlugins;
-			}
-			set
-			{
-				this._ResourcePlugins.Assign(value);
-			}
-		}
-		
-		public event PropertyChangingEventHandler PropertyChanging;
-		
-		public event PropertyChangedEventHandler PropertyChanged;
-		
-		protected virtual void SendPropertyChanging()
-		{
-			if ((this.PropertyChanging != null))
-			{
-				this.PropertyChanging(this, emptyChangingEventArgs);
-			}
-		}
-		
-		protected virtual void SendPropertyChanged(String propertyName)
-		{
-			if ((this.PropertyChanged != null))
-			{
-				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
-			}
-		}
-		
-		private void attach_ResourcePlugins(ResourcePlugin entity)
-		{
-			this.SendPropertyChanging();
-			entity.Plugin = this;
-		}
-		
-		private void detach_ResourcePlugins(ResourcePlugin entity)
-		{
-			this.SendPropertyChanging();
-			entity.Plugin = null;
-		}
-	}
-	
-	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.ResourcePlugin")]
-	public partial class ResourcePlugin : INotifyPropertyChanging, INotifyPropertyChanged
-	{
-		
-		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
-		
-		private System.Guid _ResourceId;
-		
-		private System.Guid _PluginId;
-		
-		private EntityRef<Plugin> _Plugin;
-		
-		private EntityRef<Resource> _Resource;
-		
-    #region Extensibility Method Definitions
-    partial void OnLoaded();
-    partial void OnValidate(System.Data.Linq.ChangeAction action);
-    partial void OnCreated();
-    partial void OnResourceIdChanging(System.Guid value);
-    partial void OnResourceIdChanged();
-    partial void OnPluginIdChanging(System.Guid value);
-    partial void OnPluginIdChanged();
-    #endregion
-		
-		public ResourcePlugin()
-		{
-			this._Plugin = default(EntityRef<Plugin>);
-			this._Resource = default(EntityRef<Resource>);
-			OnCreated();
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ResourceId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
-		public System.Guid ResourceId
-		{
-			get
-			{
-				return this._ResourceId;
-			}
-			set
-			{
-				if ((this._ResourceId != value))
-				{
-					if (this._Resource.HasLoadedOrAssignedValue)
-					{
-						throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
-					}
-					this.OnResourceIdChanging(value);
-					this.SendPropertyChanging();
-					this._ResourceId = value;
-					this.SendPropertyChanged("ResourceId");
-					this.OnResourceIdChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PluginId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
-		public System.Guid PluginId
-		{
-			get
-			{
-				return this._PluginId;
-			}
-			set
-			{
-				if ((this._PluginId != value))
-				{
-					if (this._Plugin.HasLoadedOrAssignedValue)
-					{
-						throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
-					}
-					this.OnPluginIdChanging(value);
-					this.SendPropertyChanging();
-					this._PluginId = value;
-					this.SendPropertyChanged("PluginId");
-					this.OnPluginIdChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="Plugin_ResourcePlugin", Storage="_Plugin", ThisKey="PluginId", OtherKey="Id", IsForeignKey=true)]
-		public Plugin Plugin
-		{
-			get
-			{
-				return this._Plugin.Entity;
-			}
-			set
-			{
-				Plugin previousValue = this._Plugin.Entity;
-				if (((previousValue != value) 
-							|| (this._Plugin.HasLoadedOrAssignedValue == false)))
-				{
-					this.SendPropertyChanging();
-					if ((previousValue != null))
-					{
-						this._Plugin.Entity = null;
-						previousValue.ResourcePlugins.Remove(this);
-					}
-					this._Plugin.Entity = value;
-					if ((value != null))
-					{
-						value.ResourcePlugins.Add(this);
-						this._PluginId = value.Id;
-					}
-					else
-					{
-						this._PluginId = default(System.Guid);
-					}
-					this.SendPropertyChanged("Plugin");
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="Resource_ResourcePlugin", Storage="_Resource", ThisKey="ResourceId", OtherKey="Id", IsForeignKey=true)]
-		public Resource Resource
-		{
-			get
-			{
-				return this._Resource.Entity;
-			}
-			set
-			{
-				Resource previousValue = this._Resource.Entity;
-				if (((previousValue != value) 
-							|| (this._Resource.HasLoadedOrAssignedValue == false)))
-				{
-					this.SendPropertyChanging();
-					if ((previousValue != null))
-					{
-						this._Resource.Entity = null;
-						previousValue.ResourcePlugins.Remove(this);
-					}
-					this._Resource.Entity = value;
-					if ((value != null))
-					{
-						value.ResourcePlugins.Add(this);
-						this._ResourceId = value.Id;
-					}
-					else
-					{
-						this._ResourceId = default(System.Guid);
-					}
-					this.SendPropertyChanged("Resource");
-				}
-			}
-		}
-		
-		public event PropertyChangingEventHandler PropertyChanging;
-		
-		public event PropertyChangedEventHandler PropertyChanged;
-		
-		protected virtual void SendPropertyChanging()
-		{
-			if ((this.PropertyChanging != null))
-			{
-				this.PropertyChanging(this, emptyChangingEventArgs);
-			}
-		}
-		
-		protected virtual void SendPropertyChanged(String propertyName)
-		{
-			if ((this.PropertyChanged != null))
-			{
-				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
-			}
-		}
-	}
-	
-	[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.UserGroupUserGroup")]
-	public partial class UserGroupUserGroup : INotifyPropertyChanging, INotifyPropertyChanged
-	{
-		
-		private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
-		
-		private System.Guid _UserGroupId;
-		
-		private System.Guid _UserGroupUserGroupId;
-		
-		private EntityRef<UserGroupBase> _UserGroup;
-		
-		private EntityRef<UserGroupBase> _UserGroupBase;
-		
-    #region Extensibility Method Definitions
-    partial void OnLoaded();
-    partial void OnValidate(System.Data.Linq.ChangeAction action);
-    partial void OnCreated();
-    partial void OnUserGroupIdChanging(System.Guid value);
-    partial void OnUserGroupIdChanged();
-    partial void OnUserGroupUserGroupIdChanging(System.Guid value);
-    partial void OnUserGroupUserGroupIdChanged();
-    #endregion
-		
-		public UserGroupUserGroup()
-		{
-			this._UserGroup = default(EntityRef<UserGroupBase>);
-			this._UserGroupBase = default(EntityRef<UserGroupBase>);
-			OnCreated();
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserGroupId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
-		public System.Guid UserGroupId
-		{
-			get
-			{
-				return this._UserGroupId;
-			}
-			set
-			{
-				if ((this._UserGroupId != value))
-				{
-					if (this._UserGroup.HasLoadedOrAssignedValue)
-					{
-						throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
-					}
-					this.OnUserGroupIdChanging(value);
-					this.SendPropertyChanging();
-					this._UserGroupId = value;
-					this.SendPropertyChanged("UserGroupId");
-					this.OnUserGroupIdChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UserGroupUserGroupId", DbType="UniqueIdentifier NOT NULL", IsPrimaryKey=true)]
-		public System.Guid UserGroupUserGroupId
-		{
-			get
-			{
-				return this._UserGroupUserGroupId;
-			}
-			set
-			{
-				if ((this._UserGroupUserGroupId != value))
-				{
-					if (this._UserGroupBase.HasLoadedOrAssignedValue)
-					{
-						throw new System.Data.Linq.ForeignKeyReferenceAlreadyHasValueException();
-					}
-					this.OnUserGroupUserGroupIdChanging(value);
-					this.SendPropertyChanging();
-					this._UserGroupUserGroupId = value;
-					this.SendPropertyChanged("UserGroupUserGroupId");
-					this.OnUserGroupUserGroupIdChanged();
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="UserGroupBase_UserGroupUserGroup", Storage="_UserGroup", ThisKey="UserGroupId", OtherKey="Id", IsForeignKey=true)]
-		public UserGroupBase UserGroup
-		{
-			get
-			{
-				return this._UserGroup.Entity;
-			}
-			set
-			{
-				UserGroupBase previousValue = this._UserGroup.Entity;
-				if (((previousValue != value) 
-							|| (this._UserGroup.HasLoadedOrAssignedValue == false)))
-				{
-					this.SendPropertyChanging();
-					if ((previousValue != null))
-					{
-						this._UserGroup.Entity = null;
-						previousValue.UserGroupUserGroupsChilds.Remove(this);
-					}
-					this._UserGroup.Entity = value;
-					if ((value != null))
-					{
-						value.UserGroupUserGroupsChilds.Add(this);
-						this._UserGroupId = value.Id;
-					}
-					else
-					{
-						this._UserGroupId = default(System.Guid);
-					}
-					this.SendPropertyChanged("UserGroup");
-				}
-			}
-		}
-		
-		[global::System.Data.Linq.Mapping.AssociationAttribute(Name="UserGroupBase_UserGroupUserGroup1", Storage="_UserGroupBase", ThisKey="UserGroupUserGroupId", OtherKey="Id", IsForeignKey=true)]
-		public UserGroupBase UserGroupBase
-		{
-			get
-			{
-				return this._UserGroupBase.Entity;
-			}
-			set
-			{
-				UserGroupBase previousValue = this._UserGroupBase.Entity;
-				if (((previousValue != value) 
-							|| (this._UserGroupBase.HasLoadedOrAssignedValue == false)))
-				{
-					this.SendPropertyChanging();
-					if ((previousValue != null))
-					{
-						this._UserGroupBase.Entity = null;
-						previousValue.UserGroupUserGroupsParents.Remove(this);
-					}
-					this._UserGroupBase.Entity = value;
-					if ((value != null))
-					{
-						value.UserGroupUserGroupsParents.Add(this);
-						this._UserGroupUserGroupId = value.Id;
-					}
-					else
-					{
-						this._UserGroupUserGroupId = default(System.Guid);
-					}
-					this.SendPropertyChanged("UserGroupBase");
-				}
-			}
-		}
-		
-		public event PropertyChangingEventHandler PropertyChanging;
-		
-		public event PropertyChangedEventHandler PropertyChanged;
-		
-		protected virtual void SendPropertyChanging()
-		{
-			if ((this.PropertyChanging != null))
-			{
-				this.PropertyChanging(this, emptyChangingEventArgs);
-			}
-		}
-		
-		protected virtual void SendPropertyChanged(String propertyName)
-		{
-			if ((this.PropertyChanged != null))
-			{
-				this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
-			}
-		}
-	}
-}
-#pragma warning restore 1591
Index: branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/HeuristicLab.Services.Access.DataAccess-3.3.csproj
===================================================================
--- branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/HeuristicLab.Services.Access.DataAccess-3.3.csproj	(revision 7536)
+++ branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/HeuristicLab.Services.Access.DataAccess-3.3.csproj	(revision 7619)
@@ -53,6 +53,6 @@
       <DependentUpon>ASPNETAuthentication.dbml</DependentUpon>
     </Compile>
-    <Compile Include="ClientManagement.designer.cs">
-      <DependentUpon>ClientManagement.dbml</DependentUpon>
+    <Compile Include="AccessService.designer.cs">
+      <DependentUpon>AccessService.dbml</DependentUpon>
       <DesignTime>True</DesignTime>
       <AutoGen>True</AutoGen>
@@ -72,7 +72,7 @@
       <SubType>Designer</SubType>
     </None>
-    <None Include="ClientManagement.dbml">
+    <None Include="AccessService.dbml">
       <Generator>MSLinqToSQLGenerator</Generator>
-      <LastGenOutput>ClientManagement.designer.cs</LastGenOutput>
+      <LastGenOutput>AccessService.designer.cs</LastGenOutput>
       <SubType>Designer</SubType>
     </None>
@@ -93,6 +93,6 @@
   </ItemGroup>
   <ItemGroup>
-    <None Include="ClientManagement.dbml.layout">
-      <DependentUpon>ClientManagement.dbml</DependentUpon>
+    <None Include="AccessService.dbml.layout">
+      <DependentUpon>AccessService.dbml</DependentUpon>
     </None>
   </ItemGroup>
Index: branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/Properties/Settings.Designer.cs
===================================================================
--- branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/Properties/Settings.Designer.cs	(revision 7536)
+++ branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/Properties/Settings.Designer.cs	(revision 7619)
@@ -2,5 +2,5 @@
 // <auto-generated>
 //     This code was generated by a tool.
-//     Runtime Version:4.0.30319.237
+//     Runtime Version:4.0.30319.530
 //
 //     Changes to this file may cause incorrect behavior and will be lost if
@@ -38,6 +38,6 @@
         [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
         [global::System.Configuration.SpecialSettingAttribute(global::System.Configuration.SpecialSetting.ConnectionString)]
-        [global::System.Configuration.DefaultSettingValueAttribute("Data Source=.;Initial Catalog=HeuristicLab.ClientManagement;Integrated Security=T" +
-            "rue")]
+        [global::System.Configuration.DefaultSettingValueAttribute("Data Source=.;Initial Catalog=HeuristicLab.AccessService;Integrated Security=True" +
+            "")]
         public string HeuristicLab_ClientManagementConnectionString {
             get {
Index: branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/Properties/Settings.settings
===================================================================
--- branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/Properties/Settings.settings	(revision 7536)
+++ branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/Properties/Settings.settings	(revision 7619)
@@ -14,8 +14,8 @@
       <DesignTimeValue Profile="(Default)">&lt;?xml version="1.0" encoding="utf-16"?&gt;
 &lt;SerializableConnectionString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;
-  &lt;ConnectionString&gt;Data Source=.;Initial Catalog=HeuristicLab.ClientManagement;Integrated Security=True&lt;/ConnectionString&gt;
+  &lt;ConnectionString&gt;Data Source=.;Initial Catalog=HeuristicLab.AccessService;Integrated Security=True&lt;/ConnectionString&gt;
   &lt;ProviderName&gt;System.Data.SqlClient&lt;/ProviderName&gt;
 &lt;/SerializableConnectionString&gt;</DesignTimeValue>
-      <Value Profile="(Default)">Data Source=.;Initial Catalog=HeuristicLab.ClientManagement;Integrated Security=True</Value>
+      <Value Profile="(Default)">Data Source=.;Initial Catalog=HeuristicLab.AccessService;Integrated Security=True</Value>
     </Setting>
   </Settings>
Index: branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/SQL Scripts/Create ClientManagement.sql
===================================================================
--- branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/SQL Scripts/Create ClientManagement.sql	(revision 7536)
+++ branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/SQL Scripts/Create ClientManagement.sql	(revision 7619)
@@ -2,102 +2,102 @@
 GO
 
-/****** Object:  Database [HeuristicLab.ClientManagement]    Script Date: 09/19/2011 13:21:28 ******/
-CREATE DATABASE [HeuristicLab.ClientManagement] ON  PRIMARY 
-( NAME = N'HeuristicLab.ClientManagement', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\HeuristicLab.ClientManagement.mdf' , SIZE = 3072KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB )
+/****** Object:  Database [HeuristicLab.AccessService]    Script Date: 09/19/2011 13:21:28 ******/
+CREATE DATABASE [HeuristicLab.AccessService] ON  PRIMARY 
+( NAME = N'HeuristicLab.AccessService', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\HeuristicLab.AccessService.mdf' , SIZE = 3072KB , MAXSIZE = UNLIMITED, FILEGROWTH = 1024KB )
  LOG ON 
-( NAME = N'HeuristicLab.ClientManagement_log', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\HeuristicLab.ClientManagement_log.ldf' , SIZE = 1024KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)
+( NAME = N'HeuristicLab.AccessService_log', FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\HeuristicLab.AccessService_log.ldf' , SIZE = 1024KB , MAXSIZE = 2048GB , FILEGROWTH = 10%)
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET COMPATIBILITY_LEVEL = 100
+ALTER DATABASE [HeuristicLab.AccessService] SET COMPATIBILITY_LEVEL = 100
 GO
 
 IF (1 = FULLTEXTSERVICEPROPERTY('IsFullTextInstalled'))
 begin
-EXEC [HeuristicLab.ClientManagement].[dbo].[sp_fulltext_database] @action = 'enable'
+EXEC [HeuristicLab.AccessService].[dbo].[sp_fulltext_database] @action = 'enable'
 end
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET ANSI_NULL_DEFAULT OFF 
+ALTER DATABASE [HeuristicLab.AccessService] SET ANSI_NULL_DEFAULT OFF 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET ANSI_NULLS OFF 
+ALTER DATABASE [HeuristicLab.AccessService] SET ANSI_NULLS OFF 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET ANSI_PADDING OFF 
+ALTER DATABASE [HeuristicLab.AccessService] SET ANSI_PADDING OFF 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET ANSI_WARNINGS OFF 
+ALTER DATABASE [HeuristicLab.AccessService] SET ANSI_WARNINGS OFF 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET ARITHABORT OFF 
+ALTER DATABASE [HeuristicLab.AccessService] SET ARITHABORT OFF 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET AUTO_CLOSE OFF 
+ALTER DATABASE [HeuristicLab.AccessService] SET AUTO_CLOSE OFF 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET AUTO_CREATE_STATISTICS ON 
+ALTER DATABASE [HeuristicLab.AccessService] SET AUTO_CREATE_STATISTICS ON 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET AUTO_SHRINK OFF 
+ALTER DATABASE [HeuristicLab.AccessService] SET AUTO_SHRINK OFF 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET AUTO_UPDATE_STATISTICS ON 
+ALTER DATABASE [HeuristicLab.AccessService] SET AUTO_UPDATE_STATISTICS ON 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET CURSOR_CLOSE_ON_COMMIT OFF 
+ALTER DATABASE [HeuristicLab.AccessService] SET CURSOR_CLOSE_ON_COMMIT OFF 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET CURSOR_DEFAULT  GLOBAL 
+ALTER DATABASE [HeuristicLab.AccessService] SET CURSOR_DEFAULT  GLOBAL 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET CONCAT_NULL_YIELDS_NULL OFF 
+ALTER DATABASE [HeuristicLab.AccessService] SET CONCAT_NULL_YIELDS_NULL OFF 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET NUMERIC_ROUNDABORT OFF 
+ALTER DATABASE [HeuristicLab.AccessService] SET NUMERIC_ROUNDABORT OFF 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET QUOTED_IDENTIFIER OFF 
+ALTER DATABASE [HeuristicLab.AccessService] SET QUOTED_IDENTIFIER OFF 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET RECURSIVE_TRIGGERS OFF 
+ALTER DATABASE [HeuristicLab.AccessService] SET RECURSIVE_TRIGGERS OFF 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET  DISABLE_BROKER 
+ALTER DATABASE [HeuristicLab.AccessService] SET  DISABLE_BROKER 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET AUTO_UPDATE_STATISTICS_ASYNC OFF 
+ALTER DATABASE [HeuristicLab.AccessService] SET AUTO_UPDATE_STATISTICS_ASYNC OFF 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET DATE_CORRELATION_OPTIMIZATION OFF 
+ALTER DATABASE [HeuristicLab.AccessService] SET DATE_CORRELATION_OPTIMIZATION OFF 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET TRUSTWORTHY OFF 
+ALTER DATABASE [HeuristicLab.AccessService] SET TRUSTWORTHY OFF 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET ALLOW_SNAPSHOT_ISOLATION OFF 
+ALTER DATABASE [HeuristicLab.AccessService] SET ALLOW_SNAPSHOT_ISOLATION OFF 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET PARAMETERIZATION SIMPLE 
+ALTER DATABASE [HeuristicLab.AccessService] SET PARAMETERIZATION SIMPLE 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET READ_COMMITTED_SNAPSHOT OFF 
+ALTER DATABASE [HeuristicLab.AccessService] SET READ_COMMITTED_SNAPSHOT OFF 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET HONOR_BROKER_PRIORITY OFF 
+ALTER DATABASE [HeuristicLab.AccessService] SET HONOR_BROKER_PRIORITY OFF 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET  READ_WRITE 
+ALTER DATABASE [HeuristicLab.AccessService] SET  READ_WRITE 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET RECOVERY FULL 
+ALTER DATABASE [HeuristicLab.AccessService] SET RECOVERY FULL 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET  MULTI_USER 
+ALTER DATABASE [HeuristicLab.AccessService] SET  MULTI_USER 
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET PAGE_VERIFY CHECKSUM  
+ALTER DATABASE [HeuristicLab.AccessService] SET PAGE_VERIFY CHECKSUM  
 GO
 
-ALTER DATABASE [HeuristicLab.ClientManagement] SET DB_CHAINING OFF 
+ALTER DATABASE [HeuristicLab.AccessService] SET DB_CHAINING OFF 
 GO
 
Index: branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/SQL Scripts/Create Initial Values.sql
===================================================================
--- branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/SQL Scripts/Create Initial Values.sql	(revision 7536)
+++ branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/SQL Scripts/Create Initial Values.sql	(revision 7619)
@@ -1,260 +1,260 @@
-USE [HeuristicLab.ClientManagement]
+USE [HeuristicLab.AccessService]
 GO
 
 /** Client Configuration **/
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[ClientConfiguration] (Hash, Description) VALUES ('','Custom Configuration');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[ClientConfiguration] (Hash, Description) VALUES ('','Custom Configuration');
 
 /** Country **/
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('N/A');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Asia/Pacific Region');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Europe');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Andorra');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('United Arab Emirates');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Afghanistan');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Antigua and Barbuda');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Anguilla');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Albania');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Armenia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Netherlands Antilles');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Angola');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Antarctica');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Argentina');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('American Samoa');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Austria');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Australia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Aruba');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Azerbaijan');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Bosnia and Herzegovina');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Barbados');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Bangladesh');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Belgium');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Burkina Faso');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Bulgaria');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Bahrain');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Burundi');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Benin');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Bermuda');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Brunei Darussalam');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Bolivia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Brazil');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Bahamas');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Bhutan');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Bouvet Island');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Botswana');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Belarus');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Belize');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Canada');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Cocos (Keeling) Islands');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Congo, The Democratic Republic of the');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Central African Republic');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Congo');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Switzerland');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Cote D''Ivoire');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Cook Islands');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Chile');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Cameroon');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('China');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Colombia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Costa Rica');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Cuba');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Cape Verde');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Christmas Island');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Cyprus');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Czech Republic');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Germany');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Djibouti');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Denmark');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Dominica');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Dominican Republic');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Algeria');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Ecuador');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Estonia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Egypt');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Western Sahara');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Eritrea');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Spain');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Ethiopia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Finland');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Fiji');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Falkland Islands (Malvinas)');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Micronesia, Federated States of');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Faroe Islands');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('France');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('France, Metropolitan');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Gabon');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('United Kingdom');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Grenada');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Georgia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('French Guiana');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Ghana');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Gibraltar');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Greenland');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Gambia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Guinea');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Guadeloupe');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Equatorial Guinea');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Greece');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('South Georgia and the South Sandwich Islands');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Guatemala');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Guam');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Guinea-Bissau');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Guyana');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Hong Kong');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Heard Island and McDonald Islands');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Honduras');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Croatia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Haiti');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Hungary');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Indonesia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Ireland');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Israel');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('India');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('British Indian Ocean Territory');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Iraq');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Iran, Islamic Republic of');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Iceland');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Italy');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Jamaica');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Jordan');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Japan');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Kenya');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Kyrgyzstan');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Cambodia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Kiribati');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Comoros');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Saint Kitts and Nevis');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Korea, Democratic People''s Republic of');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Korea, Republic of');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Kuwait');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Cayman Islands');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Kazakhstan');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Lao People''s Democratic Republic');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Lebanon');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Saint Lucia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Liechtenstein');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Sri Lanka');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Liberia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Lesotho');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Lithuania');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Luxembourg');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Latvia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Libyan Arab Jamahiriya');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Morocco');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Monaco');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Moldova, Republic of');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Madagascar');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Marshall Islands');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Macedonia, the Former Yugoslav Republic of');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Mali');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Myanmar');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Mongolia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Macau');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Northern Mariana Islands');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Martinique');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Mauritania');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Montserrat');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Malta');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Mauritius');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Maldives');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Malawi');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Mexico');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Malaysia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Mozambique');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Namibia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('New Caledonia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Niger');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Norfolk Island');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Nigeria');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Nicaragua');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Netherlands');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Norway');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Nepal');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Nauru');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Niue');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('New Zealand');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Oman');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Panama');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Peru');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('French Polynesia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Papua New Guinea');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Philippines');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Pakistan');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Poland');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Saint Pierre and Miquelon');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Pitcairn');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Puerto Rico');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Palestinian Territory, Occupied');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Portugal');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Palau');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Paraguay');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Qatar');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Reunion');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Romania');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Russian Federation');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Rwanda');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Saudi Arabia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Solomon Islands');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Seychelles');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Sudan');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Sweden');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Singapore');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Saint Helena');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Slovenia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Svalbard and Jan Mayen');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Slovakia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Sierra Leone');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('San Marino');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Senegal');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Somalia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Suriname');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Sao Tome and Principe');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('El Salvador');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Syrian Arab Republic');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Swaziland');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Turks and Caicos Islands');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Chad');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('French Southern Territories');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Togo');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Thailand');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Tajikistan');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Tokelau');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Turkmenistan');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Tunisia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Tonga');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Timor-Leste');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Turkey');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Trinidad and Tobago');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Tuvalu');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Taiwan');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Tanzania, United Republic of');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Ukraine');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Uganda');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('United States Minor Outlying Islands');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('United States');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Uruguay');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Uzbekistan');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Holy See (Vatican City State)');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Saint Vincent and the Grenadines');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Venezuela');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Virgin Islands, British');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Virgin Islands, U.S.');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Vietnam');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Vanuatu');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Wallis and Futuna');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Samoa');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Yemen');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Mayotte');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Serbia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('South Africa');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Zambia');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Montenegro');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Zimbabwe');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Anonymous Proxy');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Satellite Provider');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Other');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Aland Islands');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Guernsey');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Isle of Man');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Jersey');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Saint Barthelemy');
-INSERT INTO [HeuristicLab.ClientManagement].[dbo].[Country] (Name) VALUES ('Saint Martin');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('N/A');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Asia/Pacific Region');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Europe');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Andorra');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('United Arab Emirates');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Afghanistan');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Antigua and Barbuda');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Anguilla');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Albania');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Armenia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Netherlands Antilles');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Angola');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Antarctica');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Argentina');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('American Samoa');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Austria');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Australia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Aruba');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Azerbaijan');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Bosnia and Herzegovina');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Barbados');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Bangladesh');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Belgium');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Burkina Faso');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Bulgaria');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Bahrain');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Burundi');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Benin');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Bermuda');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Brunei Darussalam');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Bolivia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Brazil');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Bahamas');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Bhutan');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Bouvet Island');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Botswana');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Belarus');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Belize');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Canada');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Cocos (Keeling) Islands');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Congo, The Democratic Republic of the');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Central African Republic');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Congo');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Switzerland');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Cote D''Ivoire');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Cook Islands');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Chile');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Cameroon');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('China');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Colombia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Costa Rica');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Cuba');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Cape Verde');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Christmas Island');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Cyprus');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Czech Republic');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Germany');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Djibouti');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Denmark');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Dominica');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Dominican Republic');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Algeria');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Ecuador');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Estonia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Egypt');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Western Sahara');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Eritrea');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Spain');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Ethiopia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Finland');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Fiji');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Falkland Islands (Malvinas)');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Micronesia, Federated States of');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Faroe Islands');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('France');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('France, Metropolitan');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Gabon');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('United Kingdom');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Grenada');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Georgia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('French Guiana');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Ghana');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Gibraltar');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Greenland');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Gambia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Guinea');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Guadeloupe');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Equatorial Guinea');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Greece');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('South Georgia and the South Sandwich Islands');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Guatemala');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Guam');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Guinea-Bissau');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Guyana');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Hong Kong');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Heard Island and McDonald Islands');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Honduras');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Croatia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Haiti');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Hungary');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Indonesia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Ireland');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Israel');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('India');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('British Indian Ocean Territory');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Iraq');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Iran, Islamic Republic of');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Iceland');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Italy');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Jamaica');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Jordan');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Japan');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Kenya');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Kyrgyzstan');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Cambodia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Kiribati');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Comoros');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Saint Kitts and Nevis');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Korea, Democratic People''s Republic of');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Korea, Republic of');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Kuwait');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Cayman Islands');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Kazakhstan');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Lao People''s Democratic Republic');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Lebanon');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Saint Lucia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Liechtenstein');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Sri Lanka');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Liberia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Lesotho');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Lithuania');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Luxembourg');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Latvia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Libyan Arab Jamahiriya');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Morocco');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Monaco');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Moldova, Republic of');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Madagascar');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Marshall Islands');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Macedonia, the Former Yugoslav Republic of');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Mali');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Myanmar');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Mongolia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Macau');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Northern Mariana Islands');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Martinique');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Mauritania');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Montserrat');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Malta');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Mauritius');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Maldives');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Malawi');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Mexico');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Malaysia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Mozambique');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Namibia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('New Caledonia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Niger');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Norfolk Island');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Nigeria');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Nicaragua');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Netherlands');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Norway');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Nepal');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Nauru');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Niue');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('New Zealand');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Oman');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Panama');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Peru');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('French Polynesia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Papua New Guinea');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Philippines');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Pakistan');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Poland');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Saint Pierre and Miquelon');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Pitcairn');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Puerto Rico');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Palestinian Territory, Occupied');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Portugal');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Palau');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Paraguay');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Qatar');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Reunion');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Romania');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Russian Federation');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Rwanda');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Saudi Arabia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Solomon Islands');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Seychelles');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Sudan');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Sweden');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Singapore');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Saint Helena');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Slovenia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Svalbard and Jan Mayen');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Slovakia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Sierra Leone');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('San Marino');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Senegal');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Somalia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Suriname');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Sao Tome and Principe');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('El Salvador');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Syrian Arab Republic');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Swaziland');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Turks and Caicos Islands');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Chad');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('French Southern Territories');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Togo');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Thailand');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Tajikistan');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Tokelau');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Turkmenistan');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Tunisia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Tonga');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Timor-Leste');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Turkey');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Trinidad and Tobago');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Tuvalu');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Taiwan');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Tanzania, United Republic of');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Ukraine');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Uganda');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('United States Minor Outlying Islands');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('United States');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Uruguay');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Uzbekistan');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Holy See (Vatican City State)');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Saint Vincent and the Grenadines');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Venezuela');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Virgin Islands, British');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Virgin Islands, U.S.');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Vietnam');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Vanuatu');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Wallis and Futuna');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Samoa');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Yemen');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Mayotte');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Serbia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('South Africa');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Zambia');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Montenegro');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Zimbabwe');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Anonymous Proxy');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Satellite Provider');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Other');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Aland Islands');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Guernsey');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Isle of Man');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Jersey');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Saint Barthelemy');
+INSERT INTO [HeuristicLab.AccessService].[dbo].[Country] (Name) VALUES ('Saint Martin');
Index: branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/SQL Scripts/Initialize ClientManagement.sql
===================================================================
--- branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/SQL Scripts/Initialize ClientManagement.sql	(revision 7536)
+++ branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/SQL Scripts/Initialize ClientManagement.sql	(revision 7619)
@@ -1,3 +1,3 @@
-USE [HeuristicLab.ClientManagement]
+USE [HeuristicLab.AccessService]
 GO
 
@@ -24,79 +24,5 @@
 GO
 
-USE [HeuristicLab.ClientManagement]
-GO
-
-/****** Object:  Table [dbo].[ClientError]    Script Date: 09/27/2011 17:05:38 ******/
-SET ANSI_NULLS ON
-GO
-
-SET QUOTED_IDENTIFIER ON
-GO
-
-CREATE TABLE [dbo].[ClientError](
-	[Id] [uniqueidentifier] NOT NULL,
-	[Timestamp] [datetime] NOT NULL,
-	[Exception] [nvarchar](max) NULL,
-	[UserComment] [nvarchar](max) NULL,
-	[ConfigDump] [nvarchar](max) NULL,
-	[ClientId] [uniqueidentifier] NULL,
-	[UserId] [uniqueidentifier] NULL,
- CONSTRAINT [PK_ClientError] PRIMARY KEY CLUSTERED 
-(
-	[Id] ASC
-)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
-) ON [PRIMARY]
-
-GO
-
-ALTER TABLE [dbo].[ClientError]  WITH CHECK ADD  CONSTRAINT [FK_ClientError_Resource] FOREIGN KEY([ClientId])
-REFERENCES [dbo].[Resource] ([Id])
-GO
-
-ALTER TABLE [dbo].[ClientError] CHECK CONSTRAINT [FK_ClientError_Resource]
-GO
-
-ALTER TABLE [dbo].[ClientError]  WITH CHECK ADD  CONSTRAINT [FK_ClientError_UserGroup] FOREIGN KEY([UserId])
-REFERENCES [dbo].[UserGroup] ([Id])
-GO
-
-ALTER TABLE [dbo].[ClientError] CHECK CONSTRAINT [FK_ClientError_UserGroup]
-GO
-
-ALTER TABLE [dbo].[ClientError] ADD  CONSTRAINT [DF_ClientError_Id]  DEFAULT (newsequentialid()) FOR [Id]
-GO
-
-USE [HeuristicLab.ClientManagement]
-GO
-
-/****** Object:  Table [dbo].[ClientLog]    Script Date: 09/27/2011 17:05:50 ******/
-SET ANSI_NULLS ON
-GO
-
-SET QUOTED_IDENTIFIER ON
-GO
-
-CREATE TABLE [dbo].[ClientLog](
-	[Timestamp] [datetime] NOT NULL,
-	[ResourceId] [uniqueidentifier] NOT NULL,
-	[Message] [nvarchar](max) NULL,
- CONSTRAINT [PK_ClientLog] PRIMARY KEY CLUSTERED 
-(
-	[Timestamp] ASC,
-	[ResourceId] ASC
-)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
-) ON [PRIMARY]
-
-GO
-
-ALTER TABLE [dbo].[ClientLog]  WITH CHECK ADD  CONSTRAINT [FK_ClientLog_Resource] FOREIGN KEY([ResourceId])
-REFERENCES [dbo].[Resource] ([Id])
-GO
-
-ALTER TABLE [dbo].[ClientLog] CHECK CONSTRAINT [FK_ClientLog_Resource]
-GO
-
-
-USE [HeuristicLab.ClientManagement]
+USE [HeuristicLab.AccessService]
 GO
 
@@ -122,5 +48,5 @@
 GO
 
-USE [HeuristicLab.ClientManagement]
+USE [HeuristicLab.AccessService]
 GO
 
@@ -146,5 +72,5 @@
 GO
 
-USE [HeuristicLab.ClientManagement]
+USE [HeuristicLab.AccessService]
 GO
 
@@ -170,5 +96,5 @@
 GO
 
-USE [HeuristicLab.ClientManagement]
+USE [HeuristicLab.AccessService]
 GO
 
@@ -196,79 +122,5 @@
 GO
 
-
-USE [HeuristicLab.ClientManagement]
-GO
-
-/****** Object:  Table [dbo].[ResourcePlugin]    Script Date: 09/27/2011 17:07:01 ******/
-SET ANSI_NULLS ON
-GO
-
-SET QUOTED_IDENTIFIER ON
-GO
-
-CREATE TABLE [dbo].[ResourcePlugin](
-	[ResourceId] [uniqueidentifier] NOT NULL,
-	[PluginId] [uniqueidentifier] NOT NULL,
- CONSTRAINT [PK_ResourcePlugin] PRIMARY KEY CLUSTERED 
-(
-	[ResourceId] ASC,
-	[PluginId] ASC
-)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
-) ON [PRIMARY]
-
-GO
-
-ALTER TABLE [dbo].[ResourcePlugin]  WITH CHECK ADD  CONSTRAINT [FK_ResourcePlugin_Plugin] FOREIGN KEY([PluginId])
-REFERENCES [dbo].[Plugin] ([Id])
-GO
-
-ALTER TABLE [dbo].[ResourcePlugin] CHECK CONSTRAINT [FK_ResourcePlugin_Plugin]
-GO
-
-ALTER TABLE [dbo].[ResourcePlugin]  WITH CHECK ADD  CONSTRAINT [FK_ResourcePlugin_Resource] FOREIGN KEY([ResourceId])
-REFERENCES [dbo].[Resource] ([Id])
-GO
-
-ALTER TABLE [dbo].[ResourcePlugin] CHECK CONSTRAINT [FK_ResourcePlugin_Resource]
-GO
-
-
-USE [HeuristicLab.ClientManagement]
-GO
-
-/****** Object:  Table [dbo].[ResourceResourceGroup]    Script Date: 09/27/2011 17:07:08 ******/
-SET ANSI_NULLS ON
-GO
-
-SET QUOTED_IDENTIFIER ON
-GO
-
-CREATE TABLE [dbo].[ResourceResourceGroup](
-	[ResourceId] [uniqueidentifier] NOT NULL,
-	[ResourceGroupId] [uniqueidentifier] NOT NULL,
- CONSTRAINT [PK_ResourceResourceGroup_Id] PRIMARY KEY CLUSTERED 
-(
-	[ResourceId] ASC,
-	[ResourceGroupId] ASC
-)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
-) ON [PRIMARY]
-
-GO
-
-ALTER TABLE [dbo].[ResourceResourceGroup]  WITH CHECK ADD  CONSTRAINT [FK_ResourceResourceGroup_ResourceGroupId] FOREIGN KEY([ResourceGroupId])
-REFERENCES [dbo].[Resource] ([Id])
-GO
-
-ALTER TABLE [dbo].[ResourceResourceGroup] CHECK CONSTRAINT [FK_ResourceResourceGroup_ResourceGroupId]
-GO
-
-ALTER TABLE [dbo].[ResourceResourceGroup]  WITH CHECK ADD  CONSTRAINT [FK_ResourceResourceGroup_ResourceId] FOREIGN KEY([ResourceId])
-REFERENCES [dbo].[Resource] ([Id])
-GO
-
-ALTER TABLE [dbo].[ResourceResourceGroup] CHECK CONSTRAINT [FK_ResourceResourceGroup_ResourceId]
-GO
-
-USE [HeuristicLab.ClientManagement]
+USE [HeuristicLab.AccessService]
 GO
 
@@ -334,5 +186,77 @@
 GO
 
-USE [HeuristicLab.ClientManagement]
+USE [HeuristicLab.AccessService]
+GO
+
+/****** Object:  Table [dbo].[ResourceResourceGroup]    Script Date: 09/27/2011 17:07:08 ******/
+SET ANSI_NULLS ON
+GO
+
+SET QUOTED_IDENTIFIER ON
+GO
+
+CREATE TABLE [dbo].[ResourceResourceGroup](
+	[ResourceId] [uniqueidentifier] NOT NULL,
+	[ResourceGroupId] [uniqueidentifier] NOT NULL,
+ CONSTRAINT [PK_ResourceResourceGroup_Id] PRIMARY KEY CLUSTERED 
+(
+	[ResourceId] ASC,
+	[ResourceGroupId] ASC
+)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
+) ON [PRIMARY]
+
+GO
+
+ALTER TABLE [dbo].[ResourceResourceGroup]  WITH CHECK ADD  CONSTRAINT [FK_ResourceResourceGroup_ResourceGroupId] FOREIGN KEY([ResourceGroupId])
+REFERENCES [dbo].[Resource] ([Id])
+GO
+
+ALTER TABLE [dbo].[ResourceResourceGroup] CHECK CONSTRAINT [FK_ResourceResourceGroup_ResourceGroupId]
+GO
+
+ALTER TABLE [dbo].[ResourceResourceGroup]  WITH CHECK ADD  CONSTRAINT [FK_ResourceResourceGroup_ResourceId] FOREIGN KEY([ResourceId])
+REFERENCES [dbo].[Resource] ([Id])
+GO
+
+ALTER TABLE [dbo].[ResourceResourceGroup] CHECK CONSTRAINT [FK_ResourceResourceGroup_ResourceId]
+GO
+
+USE [HeuristicLab.AccessService]
+GO
+
+/****** Object:  Table [dbo].[ResourcePlugin]    Script Date: 09/27/2011 17:07:01 ******/
+SET ANSI_NULLS ON
+GO
+
+SET QUOTED_IDENTIFIER ON
+GO
+
+CREATE TABLE [dbo].[ResourcePlugin](
+	[ResourceId] [uniqueidentifier] NOT NULL,
+	[PluginId] [uniqueidentifier] NOT NULL,
+ CONSTRAINT [PK_ResourcePlugin] PRIMARY KEY CLUSTERED 
+(
+	[ResourceId] ASC,
+	[PluginId] ASC
+)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
+) ON [PRIMARY]
+
+GO
+
+ALTER TABLE [dbo].[ResourcePlugin]  WITH CHECK ADD  CONSTRAINT [FK_ResourcePlugin_Plugin] FOREIGN KEY([PluginId])
+REFERENCES [dbo].[Plugin] ([Id])
+GO
+
+ALTER TABLE [dbo].[ResourcePlugin] CHECK CONSTRAINT [FK_ResourcePlugin_Plugin]
+GO
+
+ALTER TABLE [dbo].[ResourcePlugin]  WITH CHECK ADD  CONSTRAINT [FK_ResourcePlugin_Resource] FOREIGN KEY([ResourceId])
+REFERENCES [dbo].[Resource] ([Id])
+GO
+
+ALTER TABLE [dbo].[ResourcePlugin] CHECK CONSTRAINT [FK_ResourcePlugin_Resource]
+GO
+
+USE [HeuristicLab.AccessService]
 GO
 
@@ -357,5 +281,5 @@
 GO
 
-USE [HeuristicLab.ClientManagement]
+USE [HeuristicLab.AccessService]
 GO
 
@@ -394,10 +318,80 @@
 
 
-
-
-
-
-
-
-
-
+USE [HeuristicLab.AccessService]
+GO
+
+/****** Object:  Table [dbo].[ClientError]    Script Date: 09/27/2011 17:05:38 ******/
+SET ANSI_NULLS ON
+GO
+
+SET QUOTED_IDENTIFIER ON
+GO
+
+CREATE TABLE [dbo].[ClientError](
+	[Id] [uniqueidentifier] NOT NULL,
+	[Timestamp] [datetime] NOT NULL,
+	[Exception] [nvarchar](max) NULL,
+	[UserComment] [nvarchar](max) NULL,
+	[ConfigDump] [nvarchar](max) NULL,
+	[ClientId] [uniqueidentifier] NULL,
+	[UserId] [uniqueidentifier] NULL,
+ CONSTRAINT [PK_ClientError] PRIMARY KEY CLUSTERED 
+(
+	[Id] ASC
+)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
+) ON [PRIMARY]
+
+GO
+
+ALTER TABLE [dbo].[ClientError]  WITH CHECK ADD  CONSTRAINT [FK_ClientError_Resource] FOREIGN KEY([ClientId])
+REFERENCES [dbo].[Resource] ([Id])
+GO
+
+ALTER TABLE [dbo].[ClientError] CHECK CONSTRAINT [FK_ClientError_Resource]
+GO
+
+ALTER TABLE [dbo].[ClientError]  WITH CHECK ADD  CONSTRAINT [FK_ClientError_UserGroup] FOREIGN KEY([UserId])
+REFERENCES [dbo].[UserGroup] ([Id])
+GO
+
+ALTER TABLE [dbo].[ClientError] CHECK CONSTRAINT [FK_ClientError_UserGroup]
+GO
+
+ALTER TABLE [dbo].[ClientError] ADD  CONSTRAINT [DF_ClientError_Id]  DEFAULT (newsequentialid()) FOR [Id]
+GO
+
+USE [HeuristicLab.AccessService]
+GO
+
+/****** Object:  Table [dbo].[ClientLog]    Script Date: 09/27/2011 17:05:50 ******/
+SET ANSI_NULLS ON
+GO
+
+SET QUOTED_IDENTIFIER ON
+GO
+
+CREATE TABLE [dbo].[ClientLog](
+	[Timestamp] [datetime] NOT NULL,
+	[ResourceId] [uniqueidentifier] NOT NULL,
+	[Message] [nvarchar](max) NULL,
+ CONSTRAINT [PK_ClientLog] PRIMARY KEY CLUSTERED 
+(
+	[Timestamp] ASC,
+	[ResourceId] ASC
+)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
+) ON [PRIMARY]
+
+GO
+
+ALTER TABLE [dbo].[ClientLog]  WITH CHECK ADD  CONSTRAINT [FK_ClientLog_Resource] FOREIGN KEY([ResourceId])
+REFERENCES [dbo].[Resource] ([Id])
+GO
+
+ALTER TABLE [dbo].[ClientLog] CHECK CONSTRAINT [FK_ClientLog_Resource]
+GO
+
+
+
+
+
+
Index: branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/app.config
===================================================================
--- branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/app.config	(revision 7536)
+++ branches/ClientUserManagement/HeuristicLab.Services.Access.DataAccess/3.3/app.config	(revision 7619)
@@ -6,7 +6,10 @@
         <add name="HeuristicLab.Services.Directoy.DataAccess.Properties.Settings.HeuristicLab_AuthenticationConnectionString"
             connectionString="Data Source=.;Initial Catalog=HeuristicLab.Authentication;Integrated Security=True"
-            providerName="System.Data.SqlClient" />       
+            providerName="System.Data.SqlClient" />
         <add name="HeuristicLab.Services.Access.DataAccess.Properties.Settings.HeuristicLab_ClientManagementConnectionString"
-            connectionString="Data Source=.;Initial Catalog=HeuristicLab.ClientManagement;Integrated Security=True"
+            connectionString="Data Source=.;Initial Catalog=HeuristicLab.AccessService;Integrated Security=True"
+            providerName="System.Data.SqlClient" />
+        <add name="HeuristicLab.Services.Access.DataAccess.Properties.Settings.HeuristicLab_AuthenticationConnectionString"
+            connectionString="Data Source=.;Initial Catalog=HeuristicLab.Authentication;Integrated Security=True"
             providerName="System.Data.SqlClient" />
     </connectionStrings>
