out.writeObject(task());
out.writeObject(entity() == null?null:entity().name());
out.writeObject(propertyKey());
out.writeObject(dynamicPage());
EOEnterpriseObject obj = (EOEnterpriseObject) valueForKey("object");
EOEditingContext ec = (obj == null || obj.editingContext() == null)?null:obj.editingContext();
/*
* The ec must be deserialized before the EO. Otherwise, when the EO is
* deserialized, it attempts to deserialize the EC, which turns around
* and tries to deserialize the EO again. The EO is returned in its partially
* deserialized state, which results in a NullPointerException when the EC