diff --git a/src/avatartranslator/AvatarElement.java b/src/avatartranslator/AvatarElement.java
index c5244cf4210c70d8fdd96494b83a7a506c9fad1c..75f71bde153fa6861cd6c091ef97db798103204a 100644
--- a/src/avatartranslator/AvatarElement.java
+++ b/src/avatartranslator/AvatarElement.java
@@ -45,6 +45,8 @@ knowledge of the CeCILL license and that you accept its terms.
 
 package avatartranslator;
 
+import java.util.*;
+
 import myutil.*;
 
 public class AvatarElement {
@@ -53,6 +55,7 @@ public class AvatarElement {
 	
 	protected String name;
 	protected Object referenceObject;
+	protected Vector<Object> otherReferenceObjects;
     private int myID;
     
     public AvatarElement(String _name, Object _referenceObject) {
@@ -61,6 +64,29 @@ public class AvatarElement {
 	   referenceObject = _referenceObject;
     }
 	
+	public void addReferenceObject(Object _ref) {
+		if (otherReferenceObjects == null) {
+			otherReferenceObjects = new Vector<Object>();
+		}
+		otherReferenceObjects.add(_ref);
+	}
+	
+	public boolean hasReferenceObject(Object _ref) {
+		if (referenceObject == _ref) {
+			return true;
+		}
+		
+		if (otherReferenceObjects != null) {
+			for(Object obj: otherReferenceObjects) {
+				if (obj == _ref) {
+					return true;
+				}
+			}
+		}
+		
+		return false;
+	}
+	
 	public String getName() {
 		return name;
 	}
diff --git a/src/avatartranslator/AvatarStateMachine.java b/src/avatartranslator/AvatarStateMachine.java
index 8bdc036f680df21727cbd6102143fb037e0cd2bb..ac7b469f22adac37756eae5ea335c50f91a5df7d 100644
--- a/src/avatartranslator/AvatarStateMachine.java
+++ b/src/avatartranslator/AvatarStateMachine.java
@@ -400,7 +400,7 @@ public class AvatarStateMachine extends AvatarElement {
 	
 	public AvatarStateMachineElement getStateMachineElementFromReferenceObject(Object _o) {
 		for(AvatarStateMachineElement element: elements) {
-			if(element.getReferenceObject() == _o) {
+			if(element.hasReferenceObject(_o)) {
 				return element;
 			}
 		}
diff --git a/src/ui/AvatarDesignPanelTranslator.java b/src/ui/AvatarDesignPanelTranslator.java
index 7c36a46628c37b499430467f81e4d86efbf657fc..df1876d0f848ae1ba28ef6d274df10ec50ab24a8 100644
--- a/src/ui/AvatarDesignPanelTranslator.java
+++ b/src/ui/AvatarDesignPanelTranslator.java
@@ -827,6 +827,7 @@ public class AvatarDesignPanelTranslator {
 					TraceManager.addDev("Setting as checkable : " + tgc.getValue());
 				}
 				listE.addCor(astate, tgc);
+				astate.addReferenceObject(tgc);
 				tgc.setAVATARID(astate.getID());