diff --git a/LibOneM2M/oneM2M_Types b/LibOneM2M/oneM2M_Types
index 5aefeaaf923fac72b7661bf58dae798d55d23bb3..c22841b77a079b26ea4a70d45ee73bedbd1e0f94 160000
--- a/LibOneM2M/oneM2M_Types
+++ b/LibOneM2M/oneM2M_Types
@@ -1 +1 @@
-Subproject commit 5aefeaaf923fac72b7661bf58dae798d55d23bb3
+Subproject commit c22841b77a079b26ea4a70d45ee73bedbd1e0f94
diff --git a/OneM2M_Testcases_CSE_Release_3.ttcn b/OneM2M_Testcases_CSE_Release_3.ttcn
index b5406eae207dc1b377b02a26df66dd16016e4dd2..73e045c69e07195e62e5c9e2da50dba2b3f39d4d 100644
--- a/OneM2M_Testcases_CSE_Release_3.ttcn
+++ b/OneM2M_Testcases_CSE_Release_3.ttcn
@@ -8634,12 +8634,9 @@ module OneM2M_Testcases_CSE_Release_3 {
 							v_responsePrimitive.requestIdentifier := vc_request.primitive.requestPrimitive.requestIdentifier;
 							f_send(e_mcaPortIn, m_response(v_responsePrimitive));
 						}                        
-						[] mcaPortIn.receive{
-							tc_ac.stop;
-							setverdict(fail, __SCOPE__ & ":ERROR: unexpected message received");
-							tc_ac.start;
-							repeat;
-						}
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__ & ": No answer while retargeting request");
+						}                        
 					}
                     
                     f_aeSimu_checkComponentDoneAndGetVerdict(vc_cse1);
@@ -8657,14 +8654,14 @@ module OneM2M_Testcases_CSE_Release_3 {
 				 */
 				testcase TC_CSE_SUB_NTF_008() runs on Tester system CseSystem {
 
-					var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+					var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
 
-					v_ae1.start(f_CSE_SUB_NTF_008());
+					v_cse1.start(f_CSE_SUB_NTF_008());
 
-					v_ae1.done;
+					v_cse1.done;
 				}
 
-				function f_CSE_SUB_NTF_008() runs on AeSimu system CseSystem {
+				function f_CSE_SUB_NTF_008() runs on CseSimu system CseSystem {
                     var integer v_aeIndex, v_remoteCseIndex := -1;
                     var ResponsePrimitive v_responsePrimitive;
                     //var template RequestPrimitive v_requestCreateAE := m_createAe(vc_aeSimuDesc.appId, omit, vc_aeSimuDesc.aeIdStem, c_defaultAe1ResourceName, {f_getLocalPoA(vc_aeSimuDesc.mcaPortIn)});
@@ -8680,8 +8677,11 @@ module OneM2M_Testcases_CSE_Release_3 {
                     // Preamble
                     v_remoteCseIndex := f_cse_registerRemoteCse(m_createRemoteCSE_poa(-, -, -, -, -, {f_getLocalPoA()}));
                     
-                    vc_ae1.start(f_cse_preamble_registerAe());				
-                    f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					vc_ae1.start(f_cse_createAccessControlPolicyAux("SubscriptionVerificationAcp",{"all"}, int63));
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
+					
+					vc_ae1.start(f_cse_createResource_withAcpAux(int2, m_createAe(PX_TS_AE1.appId, -, PX_TS_AE1.aeIdStem, c_defaultAe2ResourceName, {f_getLocalPoA(PX_TS_AE1.mcaPortIn, "")}), -1)); // AE2 is registred
+					f_cseSimu_checkComponentDoneAndGetVerdict(vc_ae1);
 					
                     // Test Body      
                     v_aeIndex := f_getLatestResource(vc_ae1);
@@ -8689,35 +8689,21 @@ module OneM2M_Testcases_CSE_Release_3 {
 
                     vc_ae1.start(f_cse_notifyProcedure_subscriptionVerificationHandler());//Message exchange for notification
 
-                    f_send(e_mcaPort, m_request(v_reqNotify));
+                    f_send(e_mccPort, m_request(v_reqNotify));
 					tc_ac.start;
 					alt {
-						[] mcaPortIn.receive(mw_request(mw_notifyNotification(mw_contentNotification(?)))) -> value vc_request {
+						[] mccPort.receive(mw_request(mw_notifyNotification(mw_contentNotification(?)))) -> value vc_request {
 							tc_ac.stop;
 							
 							setverdict(pass, __SCOPE__ & ":INFO: Notification received");
 							
 							//Send response in any case
 							v_responsePrimitive := valueof(m_responseNotification(int2000, omit));
-							v_responsePrimitive.requestIdentifier := vc_request.primitive.requestPrimitive.requestIdentifier;
-                            v_responsePrimitive.to_ := f_getLocalPoA(vc_aeSimuDesc.mcaPortIn);
-							f_send(e_mcaPortIn, m_response(v_responsePrimitive));
-							tc_ac.start;
-							repeat;
 						}
-						[] mcaPortIn.receive(mw_request(mw_notifyResponsePrimitive(?))) -> value vc_request {
+						[] mccPort.receive(mw_request(mw_notifyResponsePrimitive(?))) -> value vc_request {
 							tc_ac.stop;
 							setverdict(fail, __SCOPE__ & ": Error, Non expected notification received");
-							//Send response in any case
-							v_responsePrimitive := valueof(m_responseNotification(int2000, omit));
-							v_responsePrimitive.requestIdentifier := vc_request.primitive.requestPrimitive.requestIdentifier;
-							f_send(e_mcaPortIn, m_response(v_responsePrimitive));
 						}                        
-						[] mcaPortIn.receive{
-							tc_ac.stop;
-							setverdict(fail, __SCOPE__ & ":ERROR: unexpected message received");
-							tc_ac.start;
-						}
                         [] tc_ac.timeout {
                             setverdict(fail, __SCOPE__ & ": No answer while retargeting request");
                         }                        
@@ -15879,7 +15865,7 @@ module OneM2M_Testcases_CSE_Release_3 {
 					v_updateSdRequestPrimitive.primitiveContent.semanticDescriptor.ontologyRef := v_remoteOntologyAddress;
 					v_updateSdRequestPrimitive.primitiveContent.semanticDescriptor.validationEnable := true;
 					v_updateSdRequestPrimitive := f_getUpdateRequestPrimitive(int24, v_resourceIndexSd, v_updateSdRequestPrimitive);
-					f_send(e_mcaPort, m_request(v_updateSdRequestPrimitive));
+					f_send(e_mcaPort, m_request(valueof(v_updateSdRequestPrimitive)));
 					
 					tc_ac.start;
 					alt {