Index: protocol/src/main/java/geniusweb/protocol/session/mopac/MOPAC.java
===================================================================
--- protocol/src/main/java/geniusweb/protocol/session/mopac/MOPAC.java	(revision 38)
+++ protocol/src/main/java/geniusweb/protocol/session/mopac/MOPAC.java	(revision 39)
@@ -253,5 +253,6 @@
 	protected synchronized void setupParties(long now) {
 		for (ProtocolToPartyConn conn : connections) {
-			conn.addListener(action -> actionRequest(conn, action, now));
+			conn.addListener(action -> actionRequest(conn, action,
+					System.currentTimeMillis()));
 		}
 		for (ProtocolToPartyConn connection : connections) {
Index: protocol/src/main/java/geniusweb/protocol/session/mopac/MOPACSettings.java
===================================================================
--- protocol/src/main/java/geniusweb/protocol/session/mopac/MOPACSettings.java	(revision 38)
+++ protocol/src/main/java/geniusweb/protocol/session/mopac/MOPACSettings.java	(revision 39)
@@ -82,5 +82,5 @@
 	 *         different ways, selectable by the user.
 	 */
-	public VotingEvaluator getVotingEvaluation() {
+	public VotingEvaluator getVotingEvaluator() {
 		return votingevaluator;
 	}
Index: protocol/src/main/java/geniusweb/protocol/session/mopac/MOPACState.java
===================================================================
--- protocol/src/main/java/geniusweb/protocol/session/mopac/MOPACState.java	(revision 38)
+++ protocol/src/main/java/geniusweb/protocol/session/mopac/MOPACState.java	(revision 39)
@@ -116,5 +116,5 @@
 		Phase firstPhase = new OfferPhase(partyStates,
 				now + getAvailablePhaseTime(newprogress, now),
-				settings.getVotingEvaluation());
+				settings.getVotingEvaluator());
 		return new MOPACState(firstPhase, actions, newprogress, settings,
 				partyprofiles);
Index: protocol/src/main/java/geniusweb/protocol/session/mopac/PartyStates.java
===================================================================
--- protocol/src/main/java/geniusweb/protocol/session/mopac/PartyStates.java	(revision 38)
+++ protocol/src/main/java/geniusweb/protocol/session/mopac/PartyStates.java	(revision 39)
@@ -215,5 +215,5 @@
 	 *             because of java's type erasure.
 	 * 
-	 * @return all actions of type done in this phase
+	 * @return all actions of requested type in this phase
 	 */
 	public <T extends Action> List<T> getActions(Class<T> type) {
Index: protocol/src/main/java/geniusweb/protocol/session/mopac/phase/OfferPhase.java
===================================================================
--- protocol/src/main/java/geniusweb/protocol/session/mopac/phase/OfferPhase.java	(revision 38)
+++ protocol/src/main/java/geniusweb/protocol/session/mopac/phase/OfferPhase.java	(revision 39)
@@ -3,5 +3,4 @@
 import java.util.Arrays;
 import java.util.List;
-import java.util.stream.Collectors;
 
 import com.fasterxml.jackson.annotation.JsonCreator;
@@ -22,7 +21,7 @@
 	@JsonCreator
 	public OfferPhase(@JsonProperty("partyStates") PartyStates partyStates,
-			@JsonProperty("deadlinems") Long deadlinems,
+			@JsonProperty("deadline") Long deadline,
 			@JsonProperty("evaluator") VotingEvaluator evaluator) {
-		super(partyStates, deadlinems, evaluator);
+		super(partyStates, deadline, evaluator);
 	}
 
@@ -60,6 +59,5 @@
 
 	protected List<Offer> getOffers() {
-		return partyStates.getActions(Offer.class).stream()
-				.collect(Collectors.toList());
+		return partyStates.getActions(Offer.class);
 	}
 
Index: protocol/src/main/java/geniusweb/protocol/session/mopac/phase/OptInPhase.java
===================================================================
--- protocol/src/main/java/geniusweb/protocol/session/mopac/phase/OptInPhase.java	(revision 38)
+++ protocol/src/main/java/geniusweb/protocol/session/mopac/phase/OptInPhase.java	(revision 39)
@@ -2,4 +2,5 @@
 
 import java.util.Arrays;
+import java.util.Collections;
 import java.util.List;
 import java.util.Map;
@@ -31,8 +32,10 @@
 	protected OptInPhase(@JsonProperty("votes") List<Votes> votes,
 			@JsonProperty("partyStates") PartyStates partyStates,
-			@JsonProperty("deadlinems") Long deadlinems,
+			@JsonProperty("deadline") Long deadline,
 			@JsonProperty("evaluator") VotingEvaluator evaluator) {
-		super(partyStates, deadlinems, evaluator);
+		super(partyStates, deadline, evaluator);
 		this.votes = votes;
+		if (votes == null)
+			throw new IllegalArgumentException("votes must be not null");
 	}
 
@@ -105,3 +108,6 @@
 	}
 
+	public List<Votes> getVotes() {
+		return Collections.unmodifiableList(votes);
+	}
 }
Index: protocol/src/main/java/geniusweb/protocol/session/mopac/phase/Phase.java
===================================================================
--- protocol/src/main/java/geniusweb/protocol/session/mopac/phase/Phase.java	(revision 38)
+++ protocol/src/main/java/geniusweb/protocol/session/mopac/phase/Phase.java	(revision 39)
@@ -47,5 +47,5 @@
 	 *               handle.
 	 * @param now    the current time
-	 * @return new VotingPhase
+	 * @return new Phase
 	 */
 	public Phase with(PartyId actor, Action action, long now);
Index: protocol/src/main/java/geniusweb/protocol/session/mopac/phase/VotingPhase.java
===================================================================
--- protocol/src/main/java/geniusweb/protocol/session/mopac/phase/VotingPhase.java	(revision 38)
+++ protocol/src/main/java/geniusweb/protocol/session/mopac/phase/VotingPhase.java	(revision 39)
@@ -2,4 +2,5 @@
 
 import java.util.Arrays;
+import java.util.Collections;
 import java.util.List;
 import java.util.stream.Collectors;
@@ -29,8 +30,10 @@
 	protected VotingPhase(@JsonProperty("offers") List<Offer> offers,
 			@JsonProperty("partyStates") PartyStates partyStates,
-			@JsonProperty("deadlinems") Long deadlinems,
+			@JsonProperty("deadline") Long deadline,
 			@JsonProperty("evaluator") VotingEvaluator evaluator) {
-		super(partyStates, deadlinems, evaluator);
+		super(partyStates, deadline, evaluator);
 		this.offers = offers;
+		if (offers == null)
+			throw new IllegalArgumentException("offers must be not null");
 	}
 
@@ -83,3 +86,10 @@
 	}
 
+	/**
+	 * 
+	 * @return the offers received in the {@link OfferPhase}
+	 */
+	public List<Offer> getOffers() {
+		return Collections.unmodifiableList(offers);
+	}
 }
