diff --git a/LibOneM2M/OneM2M_Functions.ttcn b/LibOneM2M/OneM2M_Functions.ttcn
index b17356f14a8b220bc713fc6d24db74d95883c56c..95b9e7a59401a8e8a8082b38bed83626e8df9802 100644
--- a/LibOneM2M/OneM2M_Functions.ttcn
+++ b/LibOneM2M/OneM2M_Functions.ttcn
@@ -208,14 +208,13 @@ module OneM2M_Functions {
 						tc_ac.stop;
 						setverdict(pass,__SCOPE__&":INFO: Application registered successfuly");
 						if(ischosen(v_response.primitive.responsePrimitive.primitiveContent.aE)) {
-							vc_aeAux := v_response.primitive.responsePrimitive.primitiveContent.aE;
 							
 							f_checkAttributesToBeSaved(int2, v_request, v_response.primitive.responsePrimitive);
 							
-							v_aeAuxIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, int2);
+							vc_aeAuxIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, int2);
 							
-							if(ispresent(vc_aeAux.aE_ID)){
-								f_sendAcPrimitive("AE-ID_changed", oct2char(unichar2oct(vc_aeAux.aE_ID)));
+							if(ispresent(v_response.primitive.responsePrimitive.primitiveContent.aE.aE_ID)){
+								f_sendAcPrimitive("AE-ID_changed", oct2char(unichar2oct(v_response.primitive.responsePrimitive.primitiveContent.aE.aE_ID)));
 							} else {
 								f_sendAcPrimitive("AE-ID_changed", "0");
 							}
@@ -238,7 +237,7 @@ module OneM2M_Functions {
 				}	
 				
 				f_checkCseTesterStatus();
-				return v_aeAuxIndex;
+				return vc_aeAuxIndex;
 			
 			}
 			
@@ -278,12 +277,11 @@ module OneM2M_Functions {
 						tc_ac.stop;
 						setverdict(pass, __SCOPE__&": INFO: Application registered successfuly");
 						if(ischosen(v_response.primitive.responsePrimitive.primitiveContent.aE)) {
-							vc_aeAux := v_response.primitive.responsePrimitive.primitiveContent.aE;
 							
-							v_aeAuxIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, int2);
+							vc_aeAuxIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, int2);
 							
-							if(ispresent(vc_aeAux.aE_ID)){
-								f_sendAcPrimitive("AE-ID_changed", oct2char(unichar2oct(vc_aeAux.aE_ID)));
+							if(ispresent(v_response.primitive.responsePrimitive.primitiveContent.aE.aE_ID)){
+								f_sendAcPrimitive("AE-ID_changed", oct2char(unichar2oct(v_response.primitive.responsePrimitive.primitiveContent.aE.aE_ID)));
 							} else {
 								f_sendAcPrimitive("AE-ID_changed", "0");
 							}	
@@ -307,7 +305,7 @@ module OneM2M_Functions {
 				}	
 				
 				f_checkCseTesterStatus();
-				return v_aeAuxIndex;
+				return vc_aeAuxIndex;
 			
 			}
 			
@@ -1453,7 +1451,11 @@ module OneM2M_Functions {
 			
 			if (p_resourceType == int9) {//group
 				if(match(valueof(p_request.primitiveContent.group_.memberIDs), v_defaultListOfURIs )){
-					p_request.primitiveContent.group_.memberIDs := {f_getResourceId(vc_resourcesList[p_parentIndex].resource)};
+					if (p_parentIndex == -1){
+						p_request.primitiveContent.group_.memberIDs := {f_getResourceId(vc_resourcesList[vc_aeAuxIndex].resource)};
+					}else{
+						p_request.primitiveContent.group_.memberIDs := {f_getResourceId(vc_resourcesList[p_parentIndex].resource)};
+					}
 				}
 			}
 			
diff --git a/LibOneM2M/OneM2M_TestSystem.ttcn b/LibOneM2M/OneM2M_TestSystem.ttcn
index 6c2d7d5edc5935584dccf1673575314527030cb8..b9af2a79e822635cd8d088d14a9706680e71ebf1 100644
--- a/LibOneM2M/OneM2M_TestSystem.ttcn
+++ b/LibOneM2M/OneM2M_TestSystem.ttcn
@@ -40,7 +40,7 @@ module OneM2M_TestSystem {
 		port OneM2MPort mccPort;
 
 		//global variables
-		var AE_optional vc_aeAux;//TODO To be removed
+		var integer vc_aeAuxIndex;//TODO To be removed
 		var RemoteCSE_optional vc_remoteCSEAux;//TODO To be removed
 		var AccessControlPolicy_optional vc_acpAux;
 		var integer vc_acpAuxIndex := -1;