diff --git a/src/main/java/fr/irit/smac/amas4dc/amas/agent/ClusterAgent.java b/src/main/java/fr/irit/smac/amas4dc/amas/agent/ClusterAgent.java
index 2162b40f8edc87d7221458ac06a96b2eaa3d5da7..39619e0a6d8f689d98bd283c742fe2e246169d74 100644
--- a/src/main/java/fr/irit/smac/amas4dc/amas/agent/ClusterAgent.java
+++ b/src/main/java/fr/irit/smac/amas4dc/amas/agent/ClusterAgent.java
@@ -46,6 +46,7 @@ public class ClusterAgent<T extends DataPoint> extends Agent<DynamicClusteringAM
 		else
 			cluster = new Cluster<T>(dataPoint);
 		amas.getMasSettings().database().add(cluster.getRepresentative());
+		getAmas().getEnvironment().assignToBucket(cluster.getRepresentative().getBucketId(), this);
 	}
 
 	public enum State {DORMANT, WAITING_FOR_DISTANCE, DEAD}
@@ -222,6 +223,8 @@ public class ClusterAgent<T extends DataPoint> extends Agent<DynamicClusteringAM
 
 		if (getAmas().getMasSettings().amasOptions().contains(AMASOption.KeepAllDataPoints))
 			((ExtendedCluster<T>) cluster).addClusterContent((ExtendedCluster<T>) otherCluster);
+		else
+			cluster.addClusterContent(otherCluster);
 
 	}
 
@@ -229,6 +232,7 @@ public class ClusterAgent<T extends DataPoint> extends Agent<DynamicClusteringAM
 	protected void onDestroy() {
 		nextState = State.DEAD;
 		amas.getMasSettings().database().remove(cluster.getRepresentative());
+		getAmas().getEnvironment().removeFromBucket(cluster.getRepresentative().getBucketId(), this);
 	}
 
 
diff --git a/src/main/java/fr/irit/smac/amas4dc/cluster/Cluster.java b/src/main/java/fr/irit/smac/amas4dc/cluster/Cluster.java
index b4b075321371015c94c38d72dee7f6479a88de2a..30a5db52a21e1048c6a8db195ce60bc972720277 100644
--- a/src/main/java/fr/irit/smac/amas4dc/cluster/Cluster.java
+++ b/src/main/java/fr/irit/smac/amas4dc/cluster/Cluster.java
@@ -22,9 +22,13 @@ public class Cluster<T extends DataPoint> {
 		this.representative = representative;
 		this.size = 1;
 	}
+
 	public void addDataPoint(T dataPoint) {
 		size++;
 	}
 
+	public void addClusterContent(Cluster<T> otherCluster) {
+		size += otherCluster.size;
+	}
 }