diff --git a/LibOneM2M/OneM2M_Functions.ttcn b/LibOneM2M/OneM2M_Functions.ttcn
index 72a30ff2f8697d7e29127bc4e5626501d29da701..430e1e4a2a450c94f85d0be33fab35d1c823beb8 100644
--- a/LibOneM2M/OneM2M_Functions.ttcn
+++ b/LibOneM2M/OneM2M_Functions.ttcn
@@ -208,14 +208,14 @@ 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 +238,7 @@ module OneM2M_Functions {
 				}	
 				
 				f_checkCseTesterStatus();
-				return v_aeAuxIndex;
+				return vc_aeAuxIndex;
 			
 			}
 			
@@ -278,12 +278,12 @@ 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);
 							
-							if(ispresent(vc_aeAux.aE_ID)){
-								f_sendAcPrimitive("AE-ID_changed", oct2char(unichar2oct(vc_aeAux.aE_ID)));
+							vc_aeAuxIndex := f_setResource(v_response.primitive.responsePrimitive.primitiveContent, int2);
+							
+							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 +307,7 @@ module OneM2M_Functions {
 				}	
 				
 				f_checkCseTesterStatus();
-				return v_aeAuxIndex;
+				return vc_aeAuxIndex;
 			
 			}
 			
@@ -1462,7 +1462,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 3b0fd195374fd55d914cf471af5492530b79d806..f8eee8df522f3d60428c2d3dbd12634511291fa1 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;