Index: profile/pom.xml
===================================================================
--- profile/pom.xml	(revision 29)
+++ profile/pom.xml	(revision 30)
@@ -6,5 +6,5 @@
 	<groupId>geniusweb</groupId>
 	<artifactId>profile</artifactId>
-	<version>1.5.8</version> <!-- must equal ${geniusweb.version} -->
+	<version>1.5.9</version> <!-- must equal ${geniusweb.version} -->
 	<packaging>jar</packaging>
 
@@ -17,5 +17,5 @@
 		<passwd>${env.ARTIFACTORY_PASS}</passwd>
 		<jackson-2-version>2.9.10</jackson-2-version>
-		<geniusweb.version>1.5.8</geniusweb.version>
+		<geniusweb.version>1.5.9</geniusweb.version>
 	</properties>
 
@@ -42,5 +42,5 @@
 			<groupId>tudelft.utilities</groupId>
 			<artifactId>immutablelist</artifactId>
-			<version>1.1.1</version>
+			<version>1.1.2</version>
 		</dependency>
 
@@ -90,5 +90,5 @@
 			<groupId>tudelft.utilities</groupId>
 			<artifactId>junit</artifactId>
-			<version>1.0.3</version>
+			<version>1.0.5</version>
 			<scope>test</scope>
 		</dependency>
@@ -118,11 +118,15 @@
 			</snapshots>
 		</repository>
-
 	</repositories>
 
 	<pluginRepositories>
 		<pluginRepository>
-			<id>jcenter</id>
-			<url>https://jcenter.bintray.com</url>
+			<id>central</id>
+			<url>https://repo1.maven.org/</url>
+		</pluginRepository>
+		<pluginRepository>
+			<id>jfrog-plugins-release</id>
+			<name>plugins-release</name>
+			<url>https://oss.jfrog.org/artifactory/plugins-release</url>
 		</pluginRepository>
 	</pluginRepositories>
Index: profile/src/main/java/geniusweb/profile/DefaultProfile.java
===================================================================
--- profile/src/main/java/geniusweb/profile/DefaultProfile.java	(revision 29)
+++ profile/src/main/java/geniusweb/profile/DefaultProfile.java	(revision 30)
@@ -27,4 +27,11 @@
 		this.domain = domain;
 		this.reservationbid = reservationbid;
+		if (reservationbid != null) {
+			String message = domain.isFitting(reservationbid);
+			if (message != null)
+				throw new IllegalArgumentException(
+						"reservationbid is not fitting domain: " + message);
+		}
+
 	}
 
@@ -46,6 +53,6 @@
 	/**
 	 * 
-	 * @return string of values contained in here. Useful to make derived toString
-	 *         functions
+	 * @return string of values contained in here. Useful to make derived
+	 *         toString functions
 	 */
 	@JsonIgnore
@@ -60,5 +67,6 @@
 		result = prime * result + ((domain == null) ? 0 : domain.hashCode());
 		result = prime * result + ((name == null) ? 0 : name.hashCode());
-		result = prime * result + ((reservationbid == null) ? 0 : reservationbid.hashCode());
+		result = prime * result
+				+ ((reservationbid == null) ? 0 : reservationbid.hashCode());
 		return result;
 	}
Index: profile/src/main/java/geniusweb/profile/Profile.java
===================================================================
--- profile/src/main/java/geniusweb/profile/Profile.java	(revision 29)
+++ profile/src/main/java/geniusweb/profile/Profile.java	(revision 30)
@@ -41,4 +41,5 @@
 	 *         of a "reservation value" and is more general. If null, there is
 	 *         no reservation bid and any agreement is better than no agreement.
+	 *         This bid can be partial.
 	 * 
 	 */
Index: profile/src/main/java/geniusweb/profile/utilityspace/LinearAdditive.java
===================================================================
--- profile/src/main/java/geniusweb/profile/utilityspace/LinearAdditive.java	(revision 29)
+++ profile/src/main/java/geniusweb/profile/utilityspace/LinearAdditive.java	(revision 30)
@@ -1,2 +1,3 @@
+
 package geniusweb.profile.utilityspace;
 
Index: profile/src/main/java/geniusweb/profile/utilityspace/LinearAdditiveUtilitySpace.java
===================================================================
--- profile/src/main/java/geniusweb/profile/utilityspace/LinearAdditiveUtilitySpace.java	(revision 29)
+++ profile/src/main/java/geniusweb/profile/utilityspace/LinearAdditiveUtilitySpace.java	(revision 30)
@@ -125,4 +125,10 @@
 					+ weights.values() + ") must be 1");
 		}
+		if (resBid != null) {
+			String message = domain.isFitting(resBid);
+			if (message != null)
+				throw new IllegalArgumentException(
+						"reservationbid is not fitting domain: " + message);
+		}
 	}
 
Index: profile/src/test/java/geniusweb/profile/utilityspace/LinearAdditiveSerializationTest.java
===================================================================
--- profile/src/test/java/geniusweb/profile/utilityspace/LinearAdditiveSerializationTest.java	(revision 29)
+++ profile/src/test/java/geniusweb/profile/utilityspace/LinearAdditiveSerializationTest.java	(revision 30)
@@ -38,6 +38,6 @@
 	private DiscreteValue i1v1 = new DiscreteValue("issue1value1");
 	private DiscreteValue i1v2 = new DiscreteValue("issue1value2");
-	private NumberValue i2v1 = new NumberValue("0.36");
-	private NumberValue i2v2 = new NumberValue("0.71");
+	private NumberValue i2v1 = new NumberValue("15");
+	private NumberValue i2v2 = new NumberValue("16");
 	private Domain domain;
 
@@ -50,5 +50,5 @@
 	private LinearAdditiveUtilitySpace space;
 
-	private String serialized = "{\"LinearAdditiveUtilitySpace\":{\"domain\":{\"name\":\"test\",\"issuesValues\":{\"issue2\":{\"range\":[12,18,1]},\"issue1\":{\"values\":[\"issue1value1\",\"issue1value2\"]}}},\"name\":\"testprofile\",\"issueUtilities\":{\"issue2\":{\"numberutils\":{\"lowValue\":12,\"lowUtility\":0.3,\"highValue\":18,\"highUtility\":0.6}},\"issue1\":{\"discreteutils\":{\"valueUtilities\":{\"issue1value1\":0.2,\"issue1value2\":0.3}}}},\"issueWeights\":{\"issue2\":0.4,\"issue1\":0.6},\"reservationBid\":{\"issuevalues\":{\"issue2\":0.36,\"issue1\":\"issue1value2\"}}}}";
+	private String serialized = "{\"LinearAdditiveUtilitySpace\":{\"domain\":{\"name\":\"test\",\"issuesValues\":{\"issue2\":{\"range\":[12,18,1]},\"issue1\":{\"values\":[\"issue1value1\",\"issue1value2\"]}}},\"name\":\"testprofile\",\"issueUtilities\":{\"issue2\":{\"numberutils\":{\"lowValue\":12,\"lowUtility\":0.3,\"highValue\":18,\"highUtility\":0.6}},\"issue1\":{\"discreteutils\":{\"valueUtilities\":{\"issue1value1\":0.2,\"issue1value2\":0.3}}}},\"issueWeights\":{\"issue2\":0.4,\"issue1\":0.6},\"reservationBid\":{\"issuevalues\":{\"issue2\":15,\"issue1\":\"issue1value2\"}}}}";
 
 	private String jobsjson = "{\"LinearAdditiveUtilitySpace\":{\"issueUtilities\":{"
Index: profile/src/test/java/geniusweb/profile/utilityspace/LinearAdditiveTest.java
===================================================================
--- profile/src/test/java/geniusweb/profile/utilityspace/LinearAdditiveTest.java	(revision 29)
+++ profile/src/test/java/geniusweb/profile/utilityspace/LinearAdditiveTest.java	(revision 30)
@@ -25,4 +25,5 @@
 import geniusweb.issuevalue.DiscreteValueSet;
 import geniusweb.issuevalue.Domain;
+import geniusweb.issuevalue.NumberValue;
 import geniusweb.issuevalue.Value;
 import geniusweb.issuevalue.ValueSet;
@@ -171,7 +172,4 @@
 	}
 
-	/**
-	 * Empty profile is not allowed since the weights then don't sum up to 1
-	 */
 	@Test
 	public void constructorOneIssueTest() {
@@ -181,5 +179,5 @@
 		weightset.put(ISS1, BigDecimal.ONE);
 		new LinearAdditiveUtilitySpace(smalldomain, NAME, utilset, weightset,
-				reservationBid);
+				null);
 	}
 
@@ -208,5 +206,5 @@
 		weightset.put(ISS1, BigDecimal.ONE);
 		LinearAdditiveUtilitySpace space = new LinearAdditiveUtilitySpace(
-				smalldomain, NAME, utilset, weightset, reservationBid);
+				smalldomain, NAME, utilset, weightset, null);
 	}
 
@@ -278,3 +276,22 @@
 
 	}
+
+	@Test(expected = IllegalArgumentException.class)
+	public void testResBidWithNonsenseIssue() {
+		Bid resBid = new Bid("nonsense", i1v1);
+		new LinearAdditiveUtilitySpace(domain, NAME, utils, weights, resBid);
+	}
+
+	@Test(expected = IllegalArgumentException.class)
+	public void testResBidWithWrongValueType() {
+		Bid resBid = new Bid(ISS1, new NumberValue(BigDecimal.ZERO));
+		new LinearAdditiveUtilitySpace(domain, NAME, utils, weights, resBid);
+	}
+
+	@Test(expected = IllegalArgumentException.class)
+	public void testResBidWithNonsenseValue() {
+		Bid resBid = new Bid(ISS1, new DiscreteValue("nonsense"));
+		new LinearAdditiveUtilitySpace(domain, NAME, utils, weights, resBid);
+	}
+
 }
