diff --git a/OneM2M_PermutationFunctions.ttcn b/OneM2M_PermutationFunctions.ttcn
index af19535b7edacaaecafa54a64329aed89119958d..2aef57f3b1309514b16e217a86e60c0aae50cc96 100644
--- a/OneM2M_PermutationFunctions.ttcn
+++ b/OneM2M_PermutationFunctions.ttcn
@@ -10317,7 +10317,7 @@ module OneM2M_PermutationFunctions {
 	
 				group Synchronous{
 	
-					function f_CSE_NBR_SYN_001(template RequestPrimitive p_requestPrimitive, in template (omit) RequestPrimitive p_parentRequestPrimitive := omit) runs on AeSimu system CseSystem{
+					function f_CSE_RT_NBS_001(template RequestPrimitive p_requestPrimitive, in template (omit) RequestPrimitive p_parentRequestPrimitive := omit) runs on AeSimu system CseSystem{
 				
 						// Local variables
 						var MsgIn v_response;
@@ -10380,9 +10380,9 @@ module OneM2M_PermutationFunctions {
 						// Tear down
 						f_cf01Down();
 							
-					}//end f_CSE_NBR_SYN_001
+					}//end f_CSE_RT_NBS_001
 			
-					function f_CSE_NBR_SYN_002(template RequestPrimitive p_requestPrimitive, in template (omit) RequestPrimitive p_parentRequestPrimitive := omit) runs on AeSimu system CseSystem{
+					function f_CSE_RT_NBS_002(template RequestPrimitive p_requestPrimitive, in template (omit) RequestPrimitive p_parentRequestPrimitive := omit) runs on AeSimu system CseSystem{
 				
 						// Local variables
 						var MsgIn v_response;
@@ -10475,9 +10475,9 @@ module OneM2M_PermutationFunctions {
 						// Tear down
 						f_cf01Down();
 			
-					}//end f_CSE_NBR_SYN_002
+					}//end f_CSE_RT_NBS_002
 			
-					function f_CSE_NBR_SYN_003(template RequestPrimitive p_requestPrimitive, in template (omit) RequestPrimitive p_parentRequestPrimitive := omit, in Operation p_operation) runs on AeSimu system CseSystem{
+					function f_CSE_RT_NBS_003(template RequestPrimitive p_requestPrimitive, in template (omit) RequestPrimitive p_parentRequestPrimitive := omit, in Operation p_operation) runs on AeSimu system CseSystem{
 				
 						// Local variables
 						var MsgIn v_response;
@@ -10619,12 +10619,12 @@ module OneM2M_PermutationFunctions {
 						// Tear down
 						f_cf01Down();
 	
-					}//end f_CSE_NBR_SYN_003
+					}//end f_CSE_RT_NBS_003
 				}//end Group Synchronous
 	
 				group Asynchronous{
 			
-					function f_CSE_NBR_ASY_001(template RequestPrimitive p_requestPrimitive, in template (omit) RequestPrimitive p_parentRequestPrimitive := omit) runs on AeSimu system CseSystem{
+					function f_CSE_RT_NBA_001(template RequestPrimitive p_requestPrimitive, in template (omit) RequestPrimitive p_parentRequestPrimitive := omit) runs on AeSimu system CseSystem{
 				
 						// Local variables
 						var MsgIn v_response;
@@ -10697,9 +10697,9 @@ module OneM2M_PermutationFunctions {
 						// Tear down
 						f_cf01Down();
 			
-					}//end f_CSE_NBR_ASY_001
+					}//end f_CSE_RT_NBA_001
 					
-					function f_CSE_NBR_ASY_002(template RequestPrimitive p_requestPrimitive, in template (omit) RequestPrimitive p_parentRequestPrimitive := omit) runs on AeSimu system CseSystem{
+					function f_CSE_RT_NBA_002(template RequestPrimitive p_requestPrimitive, in template (omit) RequestPrimitive p_parentRequestPrimitive := omit) runs on AeSimu system CseSystem{
 				
 						// Local variables
 						var MsgIn v_response;
@@ -10792,9 +10792,9 @@ module OneM2M_PermutationFunctions {
 						// Tear down
 						f_cf01Down();
 			
-					}//end f_CSE_NBR_ASY_002
+					}//end f_CSE_RT_NBA_002
 					
-					function f_CSE_NBR_ASY_003(template RequestPrimitive p_requestPrimitive, in template (omit) RequestPrimitive p_parentRequestPrimitive := omit, in ResponseStatusCode p_responseStatusCode) runs on AeSimu system CseSystem{
+					function f_CSE_RT_NBA_003(template RequestPrimitive p_requestPrimitive, in template (omit) RequestPrimitive p_parentRequestPrimitive := omit, in ResponseStatusCode p_responseStatusCode) runs on AeSimu system CseSystem{
 				
 						// Local variables
 						var MsgIn v_response;
@@ -10866,9 +10866,9 @@ module OneM2M_PermutationFunctions {
 						// Tear down
 						f_cf01Down();
 	
-					}//end f_CSE_NBR_ASY_003
+					}//end f_CSE_RT_NBA_003
 					
-					function f_CSE_NBR_ASY_004(template RequestPrimitive p_requestPrimitive, in template (omit) RequestPrimitive p_parentRequestPrimitive := omit) runs on AeSimu system CseSystem{
+					function f_CSE_RT_NBA_004(template RequestPrimitive p_requestPrimitive, in template (omit) RequestPrimitive p_parentRequestPrimitive := omit) runs on AeSimu system CseSystem{
 				
 						// Local variables
 						var MsgIn v_response;
@@ -10943,9 +10943,9 @@ module OneM2M_PermutationFunctions {
 						// Tear down
 						f_cf01Down();
 	
-					}//end f_CSE_NBR_ASY_004
+					}//end f_CSE_RT_NBA_004
 					
-					function f_CSE_NBR_ASY_005(template RequestPrimitive p_requestPrimitive, in template (omit) RequestPrimitive p_parentRequestPrimitive := omit, in ResponseStatusCode p_responseStatusCode) runs on AeSimu system CseSystem{
+					function f_CSE_RT_NBA_005(template RequestPrimitive p_requestPrimitive, in template (omit) RequestPrimitive p_parentRequestPrimitive := omit, in ResponseStatusCode p_responseStatusCode) runs on AeSimu system CseSystem{
 				
 						// Local variables
 						var MsgIn v_response;
@@ -11033,7 +11033,7 @@ module OneM2M_PermutationFunctions {
 						// Tear down
 						f_cf01Down();
 	
-					}//end f_CSE_NBR_ASY_005
+					}//end f_CSE_RT_NBA_005
 					
 	
 				}//end Group Asynchronous
diff --git a/OneM2M_Testcases_CSE_Release_1.ttcn b/OneM2M_Testcases_CSE_Release_1.ttcn
index f1fe1bdd4e6a8a3eb562085f2c5f14ba1e295c5a..501db4fa841c87b9f05f9cdd4d8432076be7c10c 100644
--- a/OneM2M_Testcases_CSE_Release_1.ttcn
+++ b/OneM2M_Testcases_CSE_Release_1.ttcn
@@ -87,7 +87,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 	
 	group CSE {
 		
-		group Generic {
+		group General_Capability {
 			
 			group Create {
 				group g_CSE_GEN_CRE_001 {
@@ -377,7 +377,7 @@ module OneM2M_Testcases_CSE_Release_1 {
 				
 			} // end of group Delete
 		
-		} // end of group Generic
+		} // end of group General_Capability
 		
 		group Registration {
 			
diff --git a/OneM2M_Testcases_CSE_Release_2.ttcn b/OneM2M_Testcases_CSE_Release_2.ttcn
index d18fc70e32e4552cd6a199caf64b258eeb2dae26..ffccedd1ac8fddfb1958d65b699cb19db561aeb9 100644
--- a/OneM2M_Testcases_CSE_Release_2.ttcn
+++ b/OneM2M_Testcases_CSE_Release_2.ttcn
@@ -76,7 +76,7 @@ module OneM2M_Testcases_CSE_Release_2 {
 	
 	group CSE {
 		
-		group Generic {
+		group General_Capability {
 			
 			group Create {
 				
@@ -376,7 +376,7 @@ module OneM2M_Testcases_CSE_Release_2 {
 
 			} // end of group Delete
 		
-		} // end of group Generic
+		} // end of group General_Capability
 		
 		group Registration {
 			
@@ -2707,11 +2707,6 @@ module OneM2M_Testcases_CSE_Release_2 {
 																
 		}//end group Data_Management_and_Repository
     		    
-		group Location {
-    		      		      
-    		 	  
-		}//end group Location
-		
 		group Subscription_And_Notification {
 	
 			group Create {
@@ -3909,1029 +3904,998 @@ module OneM2M_Testcases_CSE_Release_2 {
 			
 		}//end group Security
 		
-		group Announcement {
-			
-			group Basic {
-		
-
-			}//end group Basic
-			
-			group Create {
-				
-			} //end group Create
-			
-			group Retrieve {
-				
+		group Communication_Management_And_Delivery_Handling {
+			group PollingChannel {
+						
+				/**
+				 * @desc Check that the IUT which hosts <pollingChannel> resource forwards a Notify request successfully to a target AE, once the IUT receives a polling request from AE (retrieve request to <pollingChannelURI> resource)
+				 * 
+				 */
+				testcase TC_CSE_PCH_001() runs on Tester system CseSystem {
+						
+					var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+											
+					v_ae1.start(f_CSE_PCH_001());
+								  	  	
+					v_ae1.done;
+								  	  		
+				}
+										
+				function f_CSE_PCH_001() runs on AeSimu system CseSystem {
+					// Local variables
+					var integer v_aeIndex := -1;
+					var integer v_resourceIndex := -1;
+					var integer v_acpAuxIndex := -1;
+					var RequestPrimitive v_req1, v_req2, v_req3;
+					var MsgIn v_resp1, v_resp3;
+					var ResponsePrimitive v_resp2;
 					
-			} //end group Retrieve
-			
-			group Update{
-
-			}//end group Update
-			
-			group Delete{
-				
-			}//end group Delete
-			
-		}//end group Announcement
+					// Test control
+		
+					// Test component configuration
+					f_cf02Up();
 		
-		group PollingChannel {
+					// Test adapter configuration
+		
+					// Preamble
+					vc_cse1.start(f_cse_registerRemoteCse(m_createRemoteCSEBase));
+					f_aeSimu_checkComponentDoneAndGetVerdict(vc_cse1);
 					
-			/**
-			 * @desc Check that the IUT which hosts <pollingChannel> resource forwards a Notify request successfully to a target AE, once the IUT receives a polling request from AE (retrieve request to <pollingChannelURI> resource)
-			 * 
-			 */
-			testcase TC_CSE_PCH_001() runs on Tester system CseSystem {
+					v_acpAuxIndex := f_cse_preamble_createAcpAux();
 					
-				var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-										
-				v_ae1.start(f_CSE_PCH_001());
-							  	  	
-				v_ae1.done;
-							  	  		
-			}
-									
-			function f_CSE_PCH_001() runs on AeSimu system CseSystem {
-				// Local variables
-				var integer v_aeIndex := -1;
-				var integer v_resourceIndex := -1;
-				var integer v_acpAuxIndex := -1;
-				var RequestPrimitive v_req1, v_req2, v_req3;
-				var MsgIn v_resp1, v_resp3;
-				var ResponsePrimitive v_resp2;
-				
-				// Test control
-	
-				// Test component configuration
-				f_cf02Up();
-	
-				// Test adapter configuration
-	
-				// Preamble
-				vc_cse1.start(f_cse_registerRemoteCse(m_createRemoteCSEBase));
-				f_aeSimu_checkComponentDoneAndGetVerdict(vc_cse1);
-				
-				v_acpAuxIndex := f_cse_preamble_createAcpAux();
-				
-				v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[v_acpAuxIndex].resource)}, -);//AE1 is registred;
-				
-				v_resourceIndex := f_cse_createResource(int15, m_createPollingChannelBase, v_aeIndex);
-				
-				v_req1 := valueof(m_retrievePollingRequest(f_getResourceAddress(v_resourceIndex), f_getOriginator(v_resourceIndex)));
-				f_send(e_mca_port, m_request(v_req1));
-				
-				v_req2 := valueof(m_notifyNotification(f_getResourceAddress(v_aeIndex), m_contentNotification_subscriptionVerification(PX_TS_CSE1.cseId)));
-				
-				vc_cse1.start(f_cse_notifyProcedure_notify(v_req2));
-				
-				v_req2.from_ := PX_TS_CSE1.cseId;
-				
-				tc_ac.start;
-				alt {
-					[] mcaPort.receive(mw_response(mw_responsePollingResponse(v_req2))) -> value v_resp1 {
-						tc_ac.stop;
-						setverdict(pass, __SCOPE__ & ": Polling response received");
-					}
-					[] mcaPort.receive(mw_response(mw_responsePollingResponse)) { 
-						tc_ac.stop;
-						setverdict(fail, __SCOPE__ & ": Content not carrying request targeting AE1");
-					}
-					[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { 
-						tc_ac.stop;
-						setverdict(fail, __SCOPE__ & ": Wrong status code");
-					}
-					[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { 
-						tc_ac.stop;
-						setverdict(fail, __SCOPE__ & ": Error while retrieving resource");
-					}
-					[] tc_ac.timeout {
-						setverdict(fail, __SCOPE__ & ": No answer while retrieving resource");
-					}
-				 }	
-								
-				// Postamble
-				f_checkAeSimuStatus();
-				
-				//Send response in any case
-				v_resp2 := valueof(m_responseNotification(int2000, omit));
-				v_resp2.requestIdentifier := v_resp1.primitive.responsePrimitive.primitiveContent.requestPrimitive.requestIdentifier;//requestIdentifier of req2
-				v_req3 := valueof(m_notifyResponsePrimitive(f_getResourceAddress(v_resourceIndex) & "/" & c_resourceShortNamePollingChannelUri, v_resp2));
-				v_req3.from_ := f_getOriginator(v_aeIndex);
-				f_send(e_mca_port, m_request(v_req3));
-				 
-				tc_ac.start;
-				alt {
-					[] mcaPort.receive(mw_response(mw_responseNotify(int2000))) -> value v_resp3 {
-						tc_ac.stop;
-						setverdict(pass, __SCOPE__ & ": Response to req3 received");
-					}
-					[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) {
-						tc_ac.stop;
-						setverdict(inconc, __SCOPE__&":INFO: Error while performing notification");
-					}
-					[] mcaPort.receive {
-						tc_ac.stop;
-						setverdict(inconc, __SCOPE__&":INFO: Unexpected message received");
-					}
-					[] tc_ac.timeout {
-						setverdict(inconc, __SCOPE__&":INFO: No answer while performing notification");
-					}
-				}
-				
-				f_aeSimu_checkComponentDoneAndGetVerdict(vc_cse1);
-				
-				f_cse_postamble_deleteResources();
-				
-				// Tear down
-				f_cf02Down();
-				
-			} // end TC_CSE_PCH_001
-			
-			/**
-			 * @desc Check that the IUT which hosts <pollingChannel> resource forwards a Notify request successfully to a target AE, once the IUT receives a polling request from AE
-			 * 
-			 */
-			testcase TC_CSE_PCH_002() runs on Tester system CseSystem {
+					v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[v_acpAuxIndex].resource)}, -);//AE1 is registred;
 					
-				var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-										
-				v_ae1.start(f_CSE_PCH_002());
-							  	  	
-				v_ae1.done;
-							  	  		
-			}
+					v_resourceIndex := f_cse_createResource(int15, m_createPollingChannelBase, v_aeIndex);
+					
+					v_req1 := valueof(m_retrievePollingRequest(f_getResourceAddress(v_resourceIndex), f_getOriginator(v_resourceIndex)));
+					f_send(e_mca_port, m_request(v_req1));
+					
+					v_req2 := valueof(m_notifyNotification(f_getResourceAddress(v_aeIndex), m_contentNotification_subscriptionVerification(PX_TS_CSE1.cseId)));
+					
+					vc_cse1.start(f_cse_notifyProcedure_notify(v_req2));
+					
+					v_req2.from_ := PX_TS_CSE1.cseId;
+					
+					tc_ac.start;
+					alt {
+						[] mcaPort.receive(mw_response(mw_responsePollingResponse(v_req2))) -> value v_resp1 {
+							tc_ac.stop;
+							setverdict(pass, __SCOPE__ & ": Polling response received");
+						}
+						[] mcaPort.receive(mw_response(mw_responsePollingResponse)) { 
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__ & ": Content not carrying request targeting AE1");
+						}
+						[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { 
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__ & ": Wrong status code");
+						}
+						[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { 
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__ & ": Error while retrieving resource");
+						}
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__ & ": No answer while retrieving resource");
+						}
+					 }	
 									
-			function f_CSE_PCH_002() runs on AeSimu system CseSystem {
-				// Local variables
-				var integer v_aeIndex, v_acpAuxIndex := -1;
-				var integer v_resourceIndex := -1;
-				var RequestPrimitive v_req1, v_req2, v_req3;
-				var MsgIn v_resp1, v_resp3;
-				var ResponsePrimitive v_resp2;
-				
-				// Test control
-	
-				// Test component configuration
-				f_cf02Up();
-	
-				// Test adapter configuration
-	
-				// Preamble
-				vc_cse1.start(f_cse_registerRemoteCse(m_createRemoteCSEBase));
-				vc_cse1.done;
-				
-				v_acpAuxIndex := f_cse_preamble_createAcpAux();
-				
-				v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[v_acpAuxIndex].resource)}, -);//AE1 is registred;
-				
-				v_resourceIndex := f_cse_createResource(int15, m_createPollingChannelBase, v_aeIndex);
-				
-				v_req2 := valueof(m_notifyNotification(f_getResourceAddress(v_aeIndex), m_contentNotification_subscriptionVerification(PX_TS_CSE1.cseId)));
-				
-				vc_cse1.start(f_cse_notifyProcedure_notify(v_req2));
-				v_req2.from_ := PX_TS_CSE1.cseId;
-				
-				v_req1 := valueof(m_retrievePollingRequest(f_getResourceAddress(v_resourceIndex), f_getOriginator(v_resourceIndex)));
-				f_send(e_mca_port, m_request(v_req1));
-								
-				tc_ac.start;
-				alt {
-					[] mcaPort.receive(mw_response(mw_responsePollingResponse(v_req2))) -> value v_resp1 {
-						tc_ac.stop;
-						setverdict(pass, __SCOPE__ & ": Polling response received");
-					}
-					[] mcaPort.receive(mw_response(mw_responsePollingResponse)) { 
-						tc_ac.stop;
-						setverdict(fail, __SCOPE__ & ": Content not carrying request targeting AE1");
-					}
-					[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { 
-						tc_ac.stop;
-						setverdict(fail, __SCOPE__ & ": Wrong status code");
-					}
-					[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { 
-						tc_ac.stop;
-						setverdict(fail, __SCOPE__ & ": Error while retrieving resource");
-					}
-					[] tc_ac.timeout {
-						setverdict(fail, __SCOPE__ & ": No answer while retrieving resource");
-					}
-				 }	
-								
-				// Postamble
-				f_checkAeSimuStatus();
-				
-				//Send response in any case
-				v_resp2 := valueof(m_responseNotification(int2000, omit));
-				v_resp2.requestIdentifier := v_resp1.primitive.responsePrimitive.primitiveContent.requestPrimitive.requestIdentifier;//requestIdentifier of req2
-				v_req3 := valueof(m_notifyResponsePrimitive(f_getResourceAddress(v_resourceIndex) & "/" & c_resourceShortNamePollingChannelUri, v_resp2));
-				v_req3.from_ := f_getOriginator(v_aeIndex);
-				f_send(e_mca_port, m_request(v_req3));
-				 
-				tc_ac.start;
-				alt {
-					[] mcaPort.receive(mw_response(mw_responseNotify(int2000))) -> value v_resp3 {
-						tc_ac.stop;
-						setverdict(pass, __SCOPE__ & ": Response to req3 received");
-					}
-					[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) {
-						tc_ac.stop;
-						setverdict(inconc, __SCOPE__&":INFO: Error while performing notification");
-					}
-					[] mcaPort.receive {
-						tc_ac.stop;
-						setverdict(inconc, __SCOPE__&":INFO: Unexpected message received");
-					}
-					[] tc_ac.timeout {
-						setverdict(inconc, __SCOPE__&":INFO: No answer while performing notification");
-					}
-				}
-				
-				f_aeSimu_checkComponentDoneAndGetVerdict(vc_cse1);
-				f_cse_postamble_deleteResources();
-				
-				// Tear down
-				f_cf01Down();
-			} // end TC_CSE_PCH_002
-			
-			/**
-			 * @desc Check that the IUT performs both forwarding the response to the CSE and sending response to AE after receiving a Notify Request sent to the <pollingChannelURI> resource
-			 * 
-			*/
-			testcase TC_CSE_PCH_003() runs on Tester system CseSystem {
+					// Postamble
+					f_checkAeSimuStatus();
 					
-				var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-							
-				v_ae1.start(f_CSE_PCH_003());
-				v_ae1.done;
-				  	  		
-			}
-			
-			function f_CSE_PCH_003() runs on AeSimu system CseSystem {
-				//Local variables
-				var integer v_aeIndex, v_acpAuxIndex := -1;
-				var integer v_resourceIndex := -1;
-				var RequestPrimitive v_req1;
-				var RequestPrimitive v_req2;
-				var RequestPrimitive v_req3;
-				var MsgIn v_resp1, v_resp3;
-				var ResponsePrimitive v_resp2;//Response to a Notify Request
-	
-				// Test control
-
-
-				// Test component configuration
-				f_cf02Up();
-
-				// Test adapter configuration
-
-				// Preamble
-				vc_cse1.start(f_cse_registerRemoteCse(m_createRemoteCSEBase));
-				vc_cse1.done;
-	
-				v_acpAuxIndex := f_cse_preamble_createAcpAux();
-				
-			    v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[v_acpAuxIndex].resource)}, -);//AE1 is registred;
-				
-				v_resourceIndex := f_cse_createResource(int15, m_createPollingChannelBase, v_aeIndex);
-				 
-				v_req1 := valueof(m_retrievePollingRequest(f_getResourceAddress(v_resourceIndex), f_getOriginator(v_resourceIndex)));
-				f_send(e_mca_port, m_request(v_req1));
-				
-				v_req2 := valueof(m_notifyNotification(f_getResourceAddress(v_aeIndex), m_contentNotification_subscriptionVerification(PX_TS_CSE1.cseId)));
-				
-				vc_cse1.start(f_cse_notifyProcedure_notify(v_req2));
-				v_req2.from_ := PX_TS_CSE1.cseId;
-				
-				tc_ac.start;
-				alt {
-					[] mcaPort.receive(mw_response(mw_responsePollingResponse(v_req2))) -> value v_resp1 {
-						tc_ac.stop;
-						setverdict(pass, __SCOPE__ & ": Polling response received");
-					}
-					[] mcaPort.receive(mw_response(mw_responsePollingResponse)) { 
-						tc_ac.stop;
-						setverdict(fail, __SCOPE__ & ": Content not carrying request targeting AE1");
-					}
-					[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { 
-						tc_ac.stop;
-						setverdict(fail, __SCOPE__ & ": Wrong status code");
-					}
-					[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { 
-						tc_ac.stop;
-						setverdict(fail, __SCOPE__ & ": Error while retrieving resource");
-					}
-					[] tc_ac.timeout {
-						setverdict(fail, __SCOPE__ & ": No answer while retrieving resource");
-					}
-				}
-				 
-				f_checkAeSimuStatus();
-				
-				//Send response in any case
-				v_resp2 := valueof(m_responseNotification(int2000, omit));
-				v_resp2.requestIdentifier := v_resp1.primitive.responsePrimitive.primitiveContent.requestPrimitive.requestIdentifier;
-				v_req3 := valueof(m_notifyResponsePrimitive(f_getResourceAddress(v_resourceIndex) & "/" & c_resourceShortNamePollingChannelUri, v_resp2));
-				v_req3.from_ := f_getOriginator(v_aeIndex);
-				f_send(e_mca_port, m_request(v_req3));
-				 
-				tc_ac.start;
-				alt {
-					[] mcaPort.receive(mw_response(mw_responseNotify(int2000))) -> value v_resp3 {
-						tc_ac.stop;
-						setverdict(pass, __SCOPE__ & ": Polling response received");
-					}
-					[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) {
-						tc_ac.stop;
-						setverdict(fail, __SCOPE__&":INFO: Error while performing notification");
-					}
-					[] mcaPort.receive {
-						tc_ac.stop;
-						setverdict(fail, __SCOPE__&":INFO: Unexpected message received");
-					}
-					[] tc_ac.timeout {
-						setverdict(fail, __SCOPE__&":INFO: No answer while performing notification");
-					}
-				}
-				
-				f_aeSimu_checkComponentDoneAndGetVerdict(vc_cse1);
-				
-				//Postamble
- 			    f_cse_postamble_deleteResources();
-				
-				// Tear down
-				f_cf02Down();
-			}
-			
-			/**
-			 * @desc Check that the IUT which performs polling send the Notify request to <pollingChannelURI> Hosting CSE after receiving response using polling channel
-			 * 
-			*/
-			testcase TC_CSE_PCH_004() runs on Tester system CseSystem {
-		
-				var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
-				
-				v_cse1.start(f_CSE_PCH_004());
-				v_cse1.done;
-			}
-			
-			function f_CSE_PCH_004() runs on CseSimu system CseSystem {
-				//Local variables
-			   	var integer v_localResourceIndex := -1;
-			   	var MsgIn v_request_req1, v_request_req3;
-			   	var RequestPrimitive v_request_req2;
-			   	var ResponsePrimitive v_response_rsp1;
-			   	var template UtTriggerPrimitive v_utRequest1 := m_utCreatePollingChannel;
-			  	var template UtTriggerPrimitive v_utRequest2;
-			   	var charstring v_action1 := "Please, send a Polling Channel CREATE request";
-			   	var charstring v_action2 := "Please, send a Polling request (Retrieve PollingChannelURI request)";
-			   	var RequestPrimitive v_requestNotify;
-			   
-			   	//Test control
-
- 			  	 // Test component configuration
-			   	f_cf02UpCseSimuMaster();
-
-			   	// Test adapter configuration
-
-			  	 // Preamble
-			   	vc_remoteCseIndex := f_cse_registerRemoteCse(m_createRemoteCSEBase);
-			   
-			   	//send triggering primitive to SUT
-			   	v_localResourceIndex := f_cse_createLocalResource(v_utRequest1,v_action1);
-			   
-			  	//Check that the created resource is a PollingChannel
-			  	if(not(vc_localResourcesList[v_localResourceIndex].resourceType == int15)) {
-			  		setverdict(inconc, __SCOPE__&":INFO: Polling Channel resource not creaded");
-			  		f_checkCseSimuStatus();
-			  	}
-			   
-			   	//Trigger IUT for sending a polling request (req1)
-				v_utRequest2 := valueof(m_utRetrievePollingChannelUri(f_getLocalResourceAddress(v_localResourceIndex) & "/" & c_resourceShortNamePollingChannelUri));
-				f_sendUtPrimitive(v_utRequest2,v_action2);
-				
-				tc_ac.start;
-			   	alt {
-				   	[] mccPortIn.receive(mw_request(mw_retrieve(f_getResourceAddress(v_localResourceIndex) & "/" & c_resourceShortNamePollingChannelUri))) -> value v_request_req1 {
-						tc_ac.stop;
-						setverdict(pass, __SCOPE__&":INFO: Polling request received successfuly");
-						v_response_rsp1 := valueof(m_responsePrimitive(int2000,v_request_req1.primitive.requestPrimitive.requestIdentifier));
-						v_response_rsp1.from_ := PX_TS_CSE1.cseId;
-						v_response_rsp1.to_ := v_request_req1.primitive.requestPrimitive.from_;
-						//Put in the primitiveContent a Notify request (req2) (simulated) from another node CSE
-						v_request_req2 := valueof(m_notify(f_getResourceAddress(vc_remoteCseIndex)));
-						v_response_rsp1.primitiveContent := { requestPrimitive := v_request_req2 };
-						f_send(e_mcc_in_port, m_response(v_response_rsp1));
-				   }
-				   [] tc_ac.timeout {
-					   setverdict(inconc, __SCOPE__&":INFO: No request received for creating resource type Polling Channel");
-				   }
-				}
-				
-				tc_ac.start;
-				alt {
-					[] mccPortIn.receive(mw_request(mw_notifyResponsePrimitive(?))) -> value v_request_req3 {
-						tc_ac.stop;
-						//Check that primitiveContent carries the response to req2 (resp2)
-						if(v_request_req3.primitive.requestPrimitive.primitiveContent.responsePrimitive.requestIdentifier == v_request_req2.requestIdentifier) {
-							setverdict(pass, __SCOPE__ & ": NOTIFY request received carrying response (rsp2) to the Notify request (req2)");
-						} else {
-							setverdict(fail, __SCOPE__ & ": NOTIFY request received not carryng the expected response (rsp2) to the Notify request (req2)");
+					//Send response in any case
+					v_resp2 := valueof(m_responseNotification(int2000, omit));
+					v_resp2.requestIdentifier := v_resp1.primitive.responsePrimitive.primitiveContent.requestPrimitive.requestIdentifier;//requestIdentifier of req2
+					v_req3 := valueof(m_notifyResponsePrimitive(f_getResourceAddress(v_resourceIndex) & "/" & c_resourceShortNamePollingChannelUri, v_resp2));
+					v_req3.from_ := f_getOriginator(v_aeIndex);
+					f_send(e_mca_port, m_request(v_req3));
+					 
+					tc_ac.start;
+					alt {
+						[] mcaPort.receive(mw_response(mw_responseNotify(int2000))) -> value v_resp3 {
+							tc_ac.stop;
+							setverdict(pass, __SCOPE__ & ": Response to req3 received");
+						}
+						[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) {
+							tc_ac.stop;
+							setverdict(inconc, __SCOPE__&":INFO: Error while performing notification");
+						}
+						[] mcaPort.receive {
+							tc_ac.stop;
+							setverdict(inconc, __SCOPE__&":INFO: Unexpected message received");
+						}
+						[] tc_ac.timeout {
+							setverdict(inconc, __SCOPE__&":INFO: No answer while performing notification");
 						}
 					}
-					[] tc_ac.timeout {
-						setverdict(fail, __SCOPE__ & ": No message while expecting NOTIFY request");
-					}
-				 }
-				
-				//Postamble
-				f_cse_postamble_deleteResourcesCSE();
 					
-			    // Tear down
-				f_cf02DownCseSimuMaster();
-			}
-			
-			group g_CSE_PCH_005 {
-				
-				testcase TC_CSE_PCH_005_RET() runs on Tester system CseSystem {
-		
-					var AeSimu v_ae1 := AeSimu.create("AE1") alive;
- 					
-				 
-				 	v_ae1.start(f_CSE_PCH_005(m_retrieve("NotInitialized", "NotInitialized")));
-				 	v_ae1.done;
-			  	}
-			  
-			  	testcase TC_CSE_PCH_005_UPD() runs on Tester system CseSystem {
+					f_aeSimu_checkComponentDoneAndGetVerdict(vc_cse1);
 					
-					var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-					var template RequestPrimitive v_updateRequest := m_updatePollingChannelBase;
-					var Labels v_labels_1 := {"VALUE_1"};
-				
-					v_updateRequest.primitiveContent.pollingChannel.labels := v_labels_1;
-					 
-					v_ae1.start(f_CSE_PCH_005(v_updateRequest));
-					v_ae1.done;
-		
-				  }
-			   
-			   testcase TC_CSE_PCH_005_DEL() runs on Tester system CseSystem {
+					f_cse_postamble_deleteResources();
 					
-					var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+					// Tear down
+					f_cf02Down();
 					
-					v_ae1.start(f_CSE_PCH_005(m_delete("NotInitialized", "NotInitialized")));
-					v_ae1.done;
-	
-				}
-			
-		 	} //end group g_CSE_PCH_005
-			 
-			 /**
-			  * @desc Check that the IUT sends the response with a status to the CSE1 when the request expires according to its Request Expiration Timestamp
-			  * 
-			  */
-			 testcase TC_CSE_PCH_006() runs on Tester system CseSystem {
-		
-				 var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+				} // end TC_CSE_PCH_001
 				
-				 v_ae1.start(f_CSE_PCH_006());
-				 v_ae1.done;
-			 }
-					
-			function f_CSE_PCH_006() runs on AeSimu system CseSystem {
-				 // Local variables
-				 var integer v_aeIndex, v_acpAuxIndex := -1;
-				 var integer v_resourceIndex := -1;
-				 var RequestPrimitive v_req1;
-
-				 // Test control
-
-				 // Test component configuration
-				 f_cf02Up();
-
-				 // Test adapter configuration
-
-				 // Preamble
-				vc_cse1.start(f_cse_registerRemoteCse(m_createRemoteCSEBase));
-				f_aeSimu_checkComponentDoneAndGetVerdict(vc_cse1);
-
-				v_acpAuxIndex := f_cse_preamble_createAcpAux();
-				 
-				v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[v_acpAuxIndex].resource)}, -);//AE1 is registred;
-				 
-				v_resourceIndex := f_cse_createResource(int15, m_createPollingChannelBase, v_aeIndex);
-
-				v_req1 := valueof(m_retrievePollingRequest(f_getResourceAddress(v_resourceIndex), f_getOriginator(v_resourceIndex)));
-				v_req1.requestExpirationTimestamp := { alt_1 := 10000};
-				 
-				f_send(e_mca_port, m_request(v_req1));
-
-				 tc_ac.start;
-				 alt {
-					[] mcaPort.receive(mw_response(mw_responsePrimitive(int4008))) -> value vc_response {
-						 tc_ac.stop;
-						setverdict(pass, __SCOPE__ & ":Response status code set to 4008 (REQUEST_TIMEOUT)");
-					 }
-					[] mcaPort.receive(mw_response()) {
-						 tc_ac.stop;
-						 setverdict(fail, __SCOPE__&":INFO: Unexpected message received");
-					 }
-					 [] tc_ac.timeout {
-						 setverdict(fail, __SCOPE__&":INFO: No answer while performing notification");
-					 }
-				 }	
-
-				 // Postamble
-				 f_cse_postamble_deleteResources();
-
-				 // Tear down
-				 f_cf02Down();
-			 } // end f_CSE_PCH_006
-			
-		}//end group PollingChannel
-		
-		group Response_Type {
-		
-			group Blocking_Requests {
-			
 				/**
-				 * @desc Check that the IUT responds successfully to a Blocking Request OPERATION
+				 * @desc Check that the IUT which hosts <pollingChannel> resource forwards a Notify request successfully to a target AE, once the IUT receives a polling request from AE
 				 * 
 				 */
-				testcase TC_CSE_RT_BR_001_CRE() runs on Tester system CseSystem {
-					// Local variables
-					                        
+				testcase TC_CSE_PCH_002() runs on Tester system CseSystem {
+						
 					var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-                    
-					v_ae1.start(f_CSE_RT_BR_001(m_createContainerBase, -, int2001));
+											
+					v_ae1.start(f_CSE_PCH_002());
+								  	  	
 					v_ae1.done;
+								  	  		
 				}
-			
-				testcase TC_CSE_RT_BR_001_UPD() runs on Tester system CseSystem {
+										
+				function f_CSE_PCH_002() runs on AeSimu system CseSystem {
 					// Local variables
-					                        
-					var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-                    
-					v_ae1.start(f_CSE_RT_BR_001(m_updateContainerBase, m_createContainerBase, int2004));
-					v_ae1.done;
-				}
-
-				testcase TC_CSE_RT_BR_001_RET() runs on Tester system CseSystem {
-					// Local variables
-					                        
-					var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-                    
-					v_ae1.start(f_CSE_RT_BR_001(m_retrieve("NotInitialized", "NotInitialized"), m_createContainerBase, int2000));
-					v_ae1.done;
-				}
-
-				testcase TC_CSE_RT_BR_001_DEL() runs on Tester system CseSystem {
-					// Local variables
-					                        
-					var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-                    
-					v_ae1.start(f_CSE_RT_BR_001(m_delete("NotInitialized", "NotInitialized"), m_createContainerBase, int2002));
-					v_ae1.done;
-				}
-						
-			}//end of group Blocking_Requests
-			
-			group Non_Blocking_Requests{
-	
-				group Synchronous{
-	
-					group g_CSE_NBR_SYN_001 {
-				
-						/**
-						 * @desc Check that the IUT rejects a Non-Blocking Synchronous Request if the IUT does not support the <request> resource
-						 * 
-						 */
-						testcase TC_CSE_NBR_SYN_001_CRE() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+					var integer v_aeIndex, v_acpAuxIndex := -1;
+					var integer v_resourceIndex := -1;
+					var RequestPrimitive v_req1, v_req2, v_req3;
+					var MsgIn v_resp1, v_resp3;
+					var ResponsePrimitive v_resp2;
 					
-							v_ae1.start(f_CSE_NBR_SYN_001(m_createContainerBase, -)); //Create Container
-							v_ae1.done;
+					// Test control
+		
+					// Test component configuration
+					f_cf02Up();
+		
+					// Test adapter configuration
+		
+					// Preamble
+					vc_cse1.start(f_cse_registerRemoteCse(m_createRemoteCSEBase));
+					vc_cse1.done;
 					
-						}
-						
-						testcase TC_CSE_NBR_SYN_001_UPD() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var template RequestPrimitive v_updateRequest := m_updateContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-							var Labels v_labels_1 := {"VALUE_1"};
+					v_acpAuxIndex := f_cse_preamble_createAcpAux();
 					
-							v_updateRequest.primitiveContent.container.labels := v_labels_1;
+					v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[v_acpAuxIndex].resource)}, -);//AE1 is registred;
 					
-							v_ae1.start(f_CSE_NBR_SYN_001(m_updateContainerBase, m_createContainerBase)); //Update Container
-							v_ae1.done;
-			  
-						}
-		
-						testcase TC_CSE_NBR_SYN_001_RET() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+					v_resourceIndex := f_cse_createResource(int15, m_createPollingChannelBase, v_aeIndex);
 					
-							v_ae1.start(f_CSE_NBR_SYN_001(m_retrieve("NotInitialized", "NotInitialized"), m_createContainerBase)); //Retrieve Container
-							v_ae1.done;
-			
-						}
-				
-						testcase TC_CSE_NBR_SYN_001_DEL() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+					v_req2 := valueof(m_notifyNotification(f_getResourceAddress(v_aeIndex), m_contentNotification_subscriptionVerification(PX_TS_CSE1.cseId)));
 					
-							v_ae1.start(f_CSE_NBR_SYN_001(m_delete("NotInitialized", "NotInitialized"), m_createContainerBase)); //Delete Container
-							v_ae1.done;
-	
-						}
-	
-					}// end group g_CSE_NBR_SYN_001
-			
-					group g_CSE_NBR_SYN_002{
-				
-						/**
-						 * @desc Check that the IUT responds to a Non-Blocking Synchronous Request with the reference of a <request> resource provided within the Content parameter of the Response 
-						 * 
-						 */
-						testcase TC_CSE_NBR_SYN_002_CRE() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-	
-							v_ae1.start(f_CSE_NBR_SYN_002(m_createContainerBase, -)); //Create Container
-							v_ae1.done;
-	
-						}
-	
-						testcase TC_CSE_NBR_SYN_002_UPD() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var template RequestPrimitive v_updateRequest := m_updateContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-							var Labels v_labels_1 := {"VALUE_1"};
+					vc_cse1.start(f_cse_notifyProcedure_notify(v_req2));
+					v_req2.from_ := PX_TS_CSE1.cseId;
 					
-							v_updateRequest.primitiveContent.container.labels := v_labels_1;
-	
-							v_ae1.start(f_CSE_NBR_SYN_002(m_updateContainerBase, m_createContainerBase)); //Update Container
-							v_ae1.done;
-	  
+					v_req1 := valueof(m_retrievePollingRequest(f_getResourceAddress(v_resourceIndex), f_getOriginator(v_resourceIndex)));
+					f_send(e_mca_port, m_request(v_req1));
+									
+					tc_ac.start;
+					alt {
+						[] mcaPort.receive(mw_response(mw_responsePollingResponse(v_req2))) -> value v_resp1 {
+							tc_ac.stop;
+							setverdict(pass, __SCOPE__ & ": Polling response received");
 						}
-	
-						testcase TC_CSE_NBR_SYN_002_RET() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-	
-							v_ae1.start(f_CSE_NBR_SYN_002(m_retrieve("NotInitialized", "NotInitialized"), m_createContainerBase)); //Retrieve Container
-							v_ae1.done;
-	
+						[] mcaPort.receive(mw_response(mw_responsePollingResponse)) { 
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__ & ": Content not carrying request targeting AE1");
 						}
-	
-						testcase TC_CSE_NBR_SYN_002_DEL() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-	
-							v_ae1.start(f_CSE_NBR_SYN_002(m_delete("NotInitialized", "NotInitialized"), m_createContainerBase)); //Delete Container
-							v_ae1.done;
-	
+						[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { 
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__ & ": Wrong status code");
 						}
-	
-					}// end group g_CSE_NBR_SYN_002
-			
-					group g_CSE_NBR_SYN_003{
-				
-						/**
-						 * @desc  Check that the IUT returns successfully the <request> resource after receiving a Non-Blocking Synchronous Request OPERATION and it contains the expected result in operationResult attribute
-						 * 
-						 */
-						testcase TC_CSE_NBR_SYN_003_CRE() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-	
-							v_ae1.start(f_CSE_NBR_SYN_003(m_createContainerBase, -, int1)); //Create Container
-							v_ae1.done;
-	
+						[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { 
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__ & ": Error while retrieving resource");
 						}
-	
-						testcase TC_CSE_NBR_SYN_003_UPD() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var template RequestPrimitive v_updateRequest := m_updateContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-							var Labels v_labels_1 := {"VALUE_1"};
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__ & ": No answer while retrieving resource");
+						}
+					 }	
+									
+					// Postamble
+					f_checkAeSimuStatus();
 					
-							v_updateRequest.primitiveContent.container.labels := v_labels_1;
-	
-							v_ae1.start(f_CSE_NBR_SYN_003(m_updateContainerBase, m_createContainerBase, int3)); //Update Container
-							v_ae1.done;
-	  
+					//Send response in any case
+					v_resp2 := valueof(m_responseNotification(int2000, omit));
+					v_resp2.requestIdentifier := v_resp1.primitive.responsePrimitive.primitiveContent.requestPrimitive.requestIdentifier;//requestIdentifier of req2
+					v_req3 := valueof(m_notifyResponsePrimitive(f_getResourceAddress(v_resourceIndex) & "/" & c_resourceShortNamePollingChannelUri, v_resp2));
+					v_req3.from_ := f_getOriginator(v_aeIndex);
+					f_send(e_mca_port, m_request(v_req3));
+					 
+					tc_ac.start;
+					alt {
+						[] mcaPort.receive(mw_response(mw_responseNotify(int2000))) -> value v_resp3 {
+							tc_ac.stop;
+							setverdict(pass, __SCOPE__ & ": Response to req3 received");
 						}
-	
-						testcase TC_CSE_NBR_SYN_003_RET() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-	
-							v_ae1.start(f_CSE_NBR_SYN_003(m_retrieve("NotInitialized", "NotInitialized"), m_createContainerBase, int2)); //Retrieve Container
-							v_ae1.done;
-	
+						[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) {
+							tc_ac.stop;
+							setverdict(inconc, __SCOPE__&":INFO: Error while performing notification");
 						}
-	
-						testcase TC_CSE_NBR_SYN_003_DEL() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-	
-							v_ae1.start(f_CSE_NBR_SYN_003(m_delete("NotInitialized", "NotInitialized"), m_createContainerBase, int4)); //Delete Container
-							v_ae1.done;
-	
+						[] mcaPort.receive {
+							tc_ac.stop;
+							setverdict(inconc, __SCOPE__&":INFO: Unexpected message received");
 						}
-	
-					}// end group g_CSE_NBR_SYN_003
-			
-				}// end group Synchronous	
-	
-				group Asynchronous{
-					group g_CSE_NBR_ASY_001 {
-				
-						/**
-						 * @desc Check that the IUT responds to a Non-Blocking Asynchronous Request without a reference to a resource containing the context of the request if the IUT does not support the <request> resource
-						 * 
-						 */
-						testcase TC_CSE_NBR_ASY_001_CRE() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-	
-							v_ae1.start(f_CSE_NBR_ASY_001(m_createContainerBase, -)); //Create Container
-							v_ae1.done;
-	
+						[] tc_ac.timeout {
+							setverdict(inconc, __SCOPE__&":INFO: No answer while performing notification");
 						}
-	
-						testcase TC_CSE_NBR_ASY_001_UPD() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var template RequestPrimitive v_updateRequest := m_updateContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-							var Labels v_labels_1 := {"VALUE_1"};
+					}
 					
-							v_updateRequest.primitiveContent.container.labels := v_labels_1;
-	
-							v_ae1.start(f_CSE_NBR_ASY_001(m_updateContainerBase, m_createContainerBase)); //Update Container
-							v_ae1.done;
-	  
-						}
-	
-						testcase TC_CSE_NBR_ASY_001_RET() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-	
-							v_ae1.start(f_CSE_NBR_ASY_001(m_retrieve("NotInitialized", "NotInitialized"), m_createContainerBase)); //Retrieve Container
-							v_ae1.done;
-	
-						}
-	
-						testcase TC_CSE_NBR_ASY_001_DEL() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-	
-							v_ae1.start(f_CSE_NBR_ASY_001(m_delete("NotInitialized", "NotInitialized"), m_createContainerBase)); //Delete Container
-							v_ae1.done;
-	
-						}
-	
-					}// end group g_CSE_NBR_ASY_001
+					f_aeSimu_checkComponentDoneAndGetVerdict(vc_cse1);
+					f_cse_postamble_deleteResources();
 					
-					group g_CSE_NBR_ASY_002{
+					// Tear down
+					f_cf01Down();
+				} // end TC_CSE_PCH_002
 				
-						/**
-						 * @desc Check that the IUT responds to a Non-Blocking Asynchronous Request with the reference of a <request> resource provided within the Content parameter of the Response 
-						 * 
-						 */
-						testcase TC_CSE_NBR_ASY_002_CRE() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-	
-							v_ae1.start(f_CSE_NBR_ASY_002(m_createContainerBase, -)); //Create Container
-							v_ae1.done;
-	
-						}
-	
-						testcase TC_CSE_NBR_ASY_002_UPD() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var template RequestPrimitive v_updateRequest := m_updateContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-							var Labels v_labels_1 := {"VALUE_1"};
-					
-							v_updateRequest.primitiveContent.container.labels := v_labels_1;
-	
-							v_ae1.start(f_CSE_NBR_ASY_002(m_updateContainerBase, m_createContainerBase)); //Update Container
-							v_ae1.done;
-	  
-						}
-	
-						testcase TC_CSE_NBR_ASY_002_RET() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-	
-							v_ae1.start(f_CSE_NBR_ASY_002(m_retrieve("NotInitialized", "NotInitialized"), m_createContainerBase)); //Retrieve Container
-							v_ae1.done;
-	
-						}
+				/**
+				 * @desc Check that the IUT performs both forwarding the response to the CSE and sending response to AE after receiving a Notify Request sent to the <pollingChannelURI> resource
+				 * 
+				*/
+				testcase TC_CSE_PCH_003() runs on Tester system CseSystem {
+						
+					var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+								
+					v_ae1.start(f_CSE_PCH_003());
+					v_ae1.done;
+					  	  		
+				}
+				
+				function f_CSE_PCH_003() runs on AeSimu system CseSystem {
+					//Local variables
+					var integer v_aeIndex, v_acpAuxIndex := -1;
+					var integer v_resourceIndex := -1;
+					var RequestPrimitive v_req1;
+					var RequestPrimitive v_req2;
+					var RequestPrimitive v_req3;
+					var MsgIn v_resp1, v_resp3;
+					var ResponsePrimitive v_resp2;//Response to a Notify Request
+		
+					// Test control
 	
-						testcase TC_CSE_NBR_ASY_002_DEL() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
 	
-							v_ae1.start(f_CSE_NBR_ASY_002(m_delete("NotInitialized", "NotInitialized"), m_createContainerBase)); //Delete Container
-							v_ae1.done;
+					// Test component configuration
+					f_cf02Up();
 	
-						}
+					// Test adapter configuration
 	
-					}// end group g_CSE_NBR_ASY_002
+					// Preamble
+					vc_cse1.start(f_cse_registerRemoteCse(m_createRemoteCSEBase));
+					vc_cse1.done;
+		
+					v_acpAuxIndex := f_cse_preamble_createAcpAux();
 					
-					group g_CSE_NBR_ASY_003{
-				
-						/**
-						 * @desc Check that the IUT sends the result of the requested Non-Blocking Asynchronous OPERATION as notification to the Originator when no notification target list is provided 
-						 * 
-						 */
-						testcase TC_CSE_NBR_ASY_003_CRE() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-	
-							v_ae1.start(f_CSE_NBR_ASY_003(m_createContainerBase, -, int2001)); //Create Container
-							v_ae1.done;
-	
+				    v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[v_acpAuxIndex].resource)}, -);//AE1 is registred;
+					
+					v_resourceIndex := f_cse_createResource(int15, m_createPollingChannelBase, v_aeIndex);
+					 
+					v_req1 := valueof(m_retrievePollingRequest(f_getResourceAddress(v_resourceIndex), f_getOriginator(v_resourceIndex)));
+					f_send(e_mca_port, m_request(v_req1));
+					
+					v_req2 := valueof(m_notifyNotification(f_getResourceAddress(v_aeIndex), m_contentNotification_subscriptionVerification(PX_TS_CSE1.cseId)));
+					
+					vc_cse1.start(f_cse_notifyProcedure_notify(v_req2));
+					v_req2.from_ := PX_TS_CSE1.cseId;
+					
+					tc_ac.start;
+					alt {
+						[] mcaPort.receive(mw_response(mw_responsePollingResponse(v_req2))) -> value v_resp1 {
+							tc_ac.stop;
+							setverdict(pass, __SCOPE__ & ": Polling response received");
 						}
-	
-						testcase TC_CSE_NBR_ASY_003_UPD() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var template RequestPrimitive v_updateRequest := m_updateContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-							var Labels v_labels_1 := {"VALUE_1"};
-	
-							v_updateRequest.primitiveContent.container.labels := v_labels_1;
-	
-							v_ae1.start(f_CSE_NBR_ASY_003(v_updateRequest, m_createContainerBase, int2004)); //Update Container
-							v_ae1.done;
-	  
+						[] mcaPort.receive(mw_response(mw_responsePollingResponse)) { 
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__ & ": Content not carrying request targeting AE1");
 						}
-	
-						testcase TC_CSE_NBR_ASY_003_RET() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-	
-							v_ae1.start(f_CSE_NBR_ASY_003(m_retrieve("NotInitialized", "NotInitialized"), m_createContainerBase, int2000)); //Retrieve Container
-							v_ae1.done;
-	
+						[] mcaPort.receive(mw_response(mw_responsePrimitiveOK)) { 
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__ & ": Wrong status code");
 						}
-	
-						testcase TC_CSE_NBR_ASY_003_DEL() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-	
-							v_ae1.start(f_CSE_NBR_ASY_003(m_delete("NotInitialized", "NotInitialized"), m_createContainerBase, int2002)); //Delete Container
-							v_ae1.done;
-	
+						[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) { 
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__ & ": Error while retrieving resource");
 						}
-	
-					}// end group g_CSE_NBR_ASY_003
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__ & ": No answer while retrieving resource");
+						}
+					}
+					 
+					f_checkAeSimuStatus();
 					
-					group g_CSE_NBR_ASY_004{
-				
-						/**
-						 * @desc Check that the IUT does not send the result of the requested Non-Blocking Asynchronous OPERATION as notification to the Originator when an empty notification target list is provided 
-						 * 
-						 */
-						testcase TC_CSE_NBR_ASY_004_CRE() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-	
-							v_ae1.start(f_CSE_NBR_ASY_004(m_createContainerBase, -)); //Create Container
-							v_ae1.done;
-	
+					//Send response in any case
+					v_resp2 := valueof(m_responseNotification(int2000, omit));
+					v_resp2.requestIdentifier := v_resp1.primitive.responsePrimitive.primitiveContent.requestPrimitive.requestIdentifier;
+					v_req3 := valueof(m_notifyResponsePrimitive(f_getResourceAddress(v_resourceIndex) & "/" & c_resourceShortNamePollingChannelUri, v_resp2));
+					v_req3.from_ := f_getOriginator(v_aeIndex);
+					f_send(e_mca_port, m_request(v_req3));
+					 
+					tc_ac.start;
+					alt {
+						[] mcaPort.receive(mw_response(mw_responseNotify(int2000))) -> value v_resp3 {
+							tc_ac.stop;
+							setverdict(pass, __SCOPE__ & ": Polling response received");
 						}
-	
-						testcase TC_CSE_NBR_ASY_004_UPD() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var template RequestPrimitive v_updateRequest := m_updateContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-							var Labels v_labels_1 := {"VALUE_1"};
-	
-							v_updateRequest.primitiveContent.container.labels := v_labels_1;
-	
-							v_ae1.start(f_CSE_NBR_ASY_004(m_updateContainerBase, m_createContainerBase)); //Update Container
-							v_ae1.done;
-	  
+						[] mcaPort.receive(mw_response(mw_responsePrimitiveKO)) {
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__&":INFO: Error while performing notification");
 						}
-	
-						testcase TC_CSE_NBR_ASY_004_RET() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-	
-							v_ae1.start(f_CSE_NBR_ASY_004(m_retrieve("NotInitialized", "NotInitialized"), m_createContainerBase)); //Retrieve Container
-							v_ae1.done;
-	
+						[] mcaPort.receive {
+							tc_ac.stop;
+							setverdict(fail, __SCOPE__&":INFO: Unexpected message received");
 						}
-	
-						testcase TC_CSE_NBR_ASY_004_DEL() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-	
-							v_ae1.start(f_CSE_NBR_ASY_004(m_delete("NotInitialized", "NotInitialized"), m_createContainerBase)); //Delete Container
-							v_ae1.done;
-	
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__&":INFO: No answer while performing notification");
 						}
-	
-					}// end group g_CSE_NBR_ASY_004
+					}
+					
+					f_aeSimu_checkComponentDoneAndGetVerdict(vc_cse1);
+					
+					//Postamble
+	 			    f_cse_postamble_deleteResources();
 					
-					group g_CSE_NBR_ASY_005{
+					// Tear down
+					f_cf02Down();
+				}
 				
-						/**
-						 * @desc Check that the IUT sends the result of the requested Non-Blocking Asynchronous OPERATION as notification to the Originator when no notification target list is provided 
-						 * 
-						 */
-						testcase TC_CSE_NBR_ASY_005_CRE() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-	
-							v_ae1.start(f_CSE_NBR_ASY_005(m_createContainerBase, -, int2001)); //Create Container
-							v_ae1.done;
-	
+				/**
+				 * @desc Check that the IUT which performs polling send the Notify request to <pollingChannelURI> Hosting CSE after receiving response using polling channel
+				 * 
+				*/
+				testcase TC_CSE_PCH_004() runs on Tester system CseSystem {
+			
+					var CseSimu v_cse1 := CseSimu.create("CSE1") alive;
+					
+					v_cse1.start(f_CSE_PCH_004());
+					v_cse1.done;
+				}
+				
+				function f_CSE_PCH_004() runs on CseSimu system CseSystem {
+					//Local variables
+				   	var integer v_localResourceIndex := -1;
+				   	var MsgIn v_request_req1, v_request_req3;
+				   	var RequestPrimitive v_request_req2;
+				   	var ResponsePrimitive v_response_rsp1;
+				   	var template UtTriggerPrimitive v_utRequest1 := m_utCreatePollingChannel;
+				  	var template UtTriggerPrimitive v_utRequest2;
+				   	var charstring v_action1 := "Please, send a Polling Channel CREATE request";
+				   	var charstring v_action2 := "Please, send a Polling request (Retrieve PollingChannelURI request)";
+				   	var RequestPrimitive v_requestNotify;
+				   
+				   	//Test control
+	
+	 			  	 // Test component configuration
+				   	f_cf02UpCseSimuMaster();
+	
+				   	// Test adapter configuration
+	
+				  	 // Preamble
+				   	vc_remoteCseIndex := f_cse_registerRemoteCse(m_createRemoteCSEBase);
+				   
+				   	//send triggering primitive to SUT
+				   	v_localResourceIndex := f_cse_createLocalResource(v_utRequest1,v_action1);
+				   
+				  	//Check that the created resource is a PollingChannel
+				  	if(not(vc_localResourcesList[v_localResourceIndex].resourceType == int15)) {
+				  		setverdict(inconc, __SCOPE__&":INFO: Polling Channel resource not creaded");
+				  		f_checkCseSimuStatus();
+				  	}
+				   
+				   	//Trigger IUT for sending a polling request (req1)
+					v_utRequest2 := valueof(m_utRetrievePollingChannelUri(f_getLocalResourceAddress(v_localResourceIndex) & "/" & c_resourceShortNamePollingChannelUri));
+					f_sendUtPrimitive(v_utRequest2,v_action2);
+					
+					tc_ac.start;
+				   	alt {
+					   	[] mccPortIn.receive(mw_request(mw_retrieve(f_getResourceAddress(v_localResourceIndex) & "/" & c_resourceShortNamePollingChannelUri))) -> value v_request_req1 {
+							tc_ac.stop;
+							setverdict(pass, __SCOPE__&":INFO: Polling request received successfuly");
+							v_response_rsp1 := valueof(m_responsePrimitive(int2000,v_request_req1.primitive.requestPrimitive.requestIdentifier));
+							v_response_rsp1.from_ := PX_TS_CSE1.cseId;
+							v_response_rsp1.to_ := v_request_req1.primitive.requestPrimitive.from_;
+							//Put in the primitiveContent a Notify request (req2) (simulated) from another node CSE
+							v_request_req2 := valueof(m_notify(f_getResourceAddress(vc_remoteCseIndex)));
+							v_response_rsp1.primitiveContent := { requestPrimitive := v_request_req2 };
+							f_send(e_mcc_in_port, m_response(v_response_rsp1));
+					   }
+					   [] tc_ac.timeout {
+						   setverdict(inconc, __SCOPE__&":INFO: No request received for creating resource type Polling Channel");
+					   }
+					}
+					
+					tc_ac.start;
+					alt {
+						[] mccPortIn.receive(mw_request(mw_notifyResponsePrimitive(?))) -> value v_request_req3 {
+							tc_ac.stop;
+							//Check that primitiveContent carries the response to req2 (resp2)
+							if(v_request_req3.primitive.requestPrimitive.primitiveContent.responsePrimitive.requestIdentifier == v_request_req2.requestIdentifier) {
+								setverdict(pass, __SCOPE__ & ": NOTIFY request received carrying response (rsp2) to the Notify request (req2)");
+							} else {
+								setverdict(fail, __SCOPE__ & ": NOTIFY request received not carryng the expected response (rsp2) to the Notify request (req2)");
+							}
 						}
-	
-						testcase TC_CSE_NBR_ASY_005_UPD() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var template RequestPrimitive v_updateRequest := m_updateContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-							var Labels v_labels_1 := {"VALUE_1"};
-	
-							v_updateRequest.primitiveContent.container.labels := v_labels_1;
-	
-							v_ae1.start(f_CSE_NBR_ASY_005(m_updateContainerBase, m_createContainerBase, int2004)); //Update Container
-							v_ae1.done;
-	  
+						[] tc_ac.timeout {
+							setverdict(fail, __SCOPE__ & ": No message while expecting NOTIFY request");
 						}
+					 }
+					
+					//Postamble
+					f_cse_postamble_deleteResourcesCSE();
+						
+				    // Tear down
+					f_cf02DownCseSimuMaster();
+				}
+				
+				group g_CSE_PCH_005 {
+					
+					testcase TC_CSE_PCH_005_RET() runs on Tester system CseSystem {
+			
+						var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+	 					
+					 
+					 	v_ae1.start(f_CSE_PCH_005(m_retrieve("NotInitialized", "NotInitialized")));
+					 	v_ae1.done;
+				  	}
+				  
+				  	testcase TC_CSE_PCH_005_UPD() runs on Tester system CseSystem {
+						
+						var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+						var template RequestPrimitive v_updateRequest := m_updatePollingChannelBase;
+						var Labels v_labels_1 := {"VALUE_1"};
+					
+						v_updateRequest.primitiveContent.pollingChannel.labels := v_labels_1;
+						 
+						v_ae1.start(f_CSE_PCH_005(v_updateRequest));
+						v_ae1.done;
+			
+					  }
+				   
+				   testcase TC_CSE_PCH_005_DEL() runs on Tester system CseSystem {
+						
+						var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+						
+						v_ae1.start(f_CSE_PCH_005(m_delete("NotInitialized", "NotInitialized")));
+						v_ae1.done;
+		
+					}
+				
+			 	} //end group g_CSE_PCH_005
+				 
+				 /**
+				  * @desc Check that the IUT sends the response with a status to the CSE1 when the request expires according to its Request Expiration Timestamp
+				  * 
+				  */
+				 testcase TC_CSE_PCH_006() runs on Tester system CseSystem {
+			
+					 var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+					
+					 v_ae1.start(f_CSE_PCH_006());
+					 v_ae1.done;
+				 }
+						
+				function f_CSE_PCH_006() runs on AeSimu system CseSystem {
+					 // Local variables
+					 var integer v_aeIndex, v_acpAuxIndex := -1;
+					 var integer v_resourceIndex := -1;
+					 var RequestPrimitive v_req1;
 	
-						testcase TC_CSE_NBR_ASY_005_RET() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
-	
-							v_ae1.start(f_CSE_NBR_ASY_005(m_retrieve("NotInitialized", "NotInitialized"), m_createContainerBase, int2000)); //Retrieve Container
-							v_ae1.done;
+					 // Test control
 	
-						}
+					 // Test component configuration
+					 f_cf02Up();
 	
-						testcase TC_CSE_NBR_ASY_005_DEL() runs on Tester system CseSystem {
-							// Local variables
-							var template RequestPrimitive v_createRequest := m_createContainerBase;
-							var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+					 // Test adapter configuration
 	
-							v_ae1.start(f_CSE_NBR_ASY_005(m_delete("NotInitialized", "NotInitialized"), m_createContainerBase, int2002)); //Delete Container
-							v_ae1.done;
+					 // Preamble
+					vc_cse1.start(f_cse_registerRemoteCse(m_createRemoteCSEBase));
+					f_aeSimu_checkComponentDoneAndGetVerdict(vc_cse1);
 	
-						}
+					v_acpAuxIndex := f_cse_preamble_createAcpAux();
+					 
+					v_aeIndex := f_cse_preamble_registerAe({f_getResourceId(vc_resourcesList[v_acpAuxIndex].resource)}, -);//AE1 is registred;
+					 
+					v_resourceIndex := f_cse_createResource(int15, m_createPollingChannelBase, v_aeIndex);
 	
-					}// end group g_CSE_NBR_ASY_005
+					v_req1 := valueof(m_retrievePollingRequest(f_getResourceAddress(v_resourceIndex), f_getOriginator(v_resourceIndex)));
+					v_req1.requestExpirationTimestamp := { alt_1 := 10000};
+					 
+					f_send(e_mca_port, m_request(v_req1));
+	
+					 tc_ac.start;
+					 alt {
+						[] mcaPort.receive(mw_response(mw_responsePrimitive(int4008))) -> value vc_response {
+							 tc_ac.stop;
+							setverdict(pass, __SCOPE__ & ":Response status code set to 4008 (REQUEST_TIMEOUT)");
+						 }
+						[] mcaPort.receive(mw_response()) {
+							 tc_ac.stop;
+							 setverdict(fail, __SCOPE__&":INFO: Unexpected message received");
+						 }
+						 [] tc_ac.timeout {
+							 setverdict(fail, __SCOPE__&":INFO: No answer while performing notification");
+						 }
+					 }	
+	
+					 // Postamble
+					 f_cse_postamble_deleteResources();
+	
+					 // Tear down
+					 f_cf02Down();
+				 } // end f_CSE_PCH_006
+				
+			}//end group PollingChannel
+			
+			group Response_Type {
+			
+				group Blocking_Requests {
+				
+					/**
+					 * @desc Check that the IUT responds successfully to a Blocking Request OPERATION
+					 * 
+					 */
+					testcase TC_CSE_RT_BR_001_CRE() runs on Tester system CseSystem {
+						// Local variables
+						                        
+						var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+	                    
+						v_ae1.start(f_CSE_RT_BR_001(m_createContainerBase, -, int2001));
+						v_ae1.done;
+					}
+				
+					testcase TC_CSE_RT_BR_001_UPD() runs on Tester system CseSystem {
+						// Local variables
+						                        
+						var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+	                    
+						v_ae1.start(f_CSE_RT_BR_001(m_updateContainerBase, m_createContainerBase, int2004));
+						v_ae1.done;
+					}
 	
-				}// end group Asynchronous	
+					testcase TC_CSE_RT_BR_001_RET() runs on Tester system CseSystem {
+						// Local variables
+						                        
+						var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+	                    
+						v_ae1.start(f_CSE_RT_BR_001(m_retrieve("NotInitialized", "NotInitialized"), m_createContainerBase, int2000));
+						v_ae1.done;
+					}
 	
-			}// end group Non_Blocking_Requests
-
-		}//end of group Response Type
+					testcase TC_CSE_RT_BR_001_DEL() runs on Tester system CseSystem {
+						// Local variables
+						                        
+						var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+	                    
+						v_ae1.start(f_CSE_RT_BR_001(m_delete("NotInitialized", "NotInitialized"), m_createContainerBase, int2002));
+						v_ae1.done;
+					}
+							
+				}//end of group Blocking_Requests
+				
+				group Non_Blocking_Requests{
 		
-		group Device_Management {
-			group timeSeries {
+					group Synchronous{
+		
+						group g_CSE_RT_NBS_001 {
+					
+							/**
+							 * @desc Check that the IUT rejects a Non-Blocking Synchronous Request if the IUT does not support the <request> resource
+							 * 
+							 */
+							testcase TC_CSE_RT_NBS_001_CRE() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+						
+								v_ae1.start(f_CSE_RT_NBS_001(m_createContainerBase, -)); //Create Container
+								v_ae1.done;
+						
+							}
+							
+							testcase TC_CSE_RT_NBS_001_UPD() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var template RequestPrimitive v_updateRequest := m_updateContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+								var Labels v_labels_1 := {"VALUE_1"};
+						
+								v_updateRequest.primitiveContent.container.labels := v_labels_1;
+						
+								v_ae1.start(f_CSE_RT_NBS_001(m_updateContainerBase, m_createContainerBase)); //Update Container
+								v_ae1.done;
+				  
+							}
+			
+							testcase TC_CSE_RT_NBS_001_RET() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+						
+								v_ae1.start(f_CSE_RT_NBS_001(m_retrieve("NotInitialized", "NotInitialized"), m_createContainerBase)); //Retrieve Container
+								v_ae1.done;
 				
+							}
 					
-			}//end group timeSeries
-			
-		}//end group dataManagement
+							testcase TC_CSE_RT_NBS_001_DEL() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+						
+								v_ae1.start(f_CSE_RT_NBS_001(m_delete("NotInitialized", "NotInitialized"), m_createContainerBase)); //Delete Container
+								v_ae1.done;
+		
+							}
+		
+						}// end group g_CSE_RT_NBS_001
+				
+						group g_CSE_RT_NBS_002{
+					
+							/**
+							 * @desc Check that the IUT responds to a Non-Blocking Synchronous Request with the reference of a <request> resource provided within the Content parameter of the Response 
+							 * 
+							 */
+							testcase TC_CSE_RT_NBS_002_CRE() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+		
+								v_ae1.start(f_CSE_RT_NBS_002(m_createContainerBase, -)); //Create Container
+								v_ae1.done;
+		
+							}
+		
+							testcase TC_CSE_RT_NBS_002_UPD() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var template RequestPrimitive v_updateRequest := m_updateContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+								var Labels v_labels_1 := {"VALUE_1"};
+						
+								v_updateRequest.primitiveContent.container.labels := v_labels_1;
+		
+								v_ae1.start(f_CSE_RT_NBS_002(m_updateContainerBase, m_createContainerBase)); //Update Container
+								v_ae1.done;
+		  
+							}
+		
+							testcase TC_CSE_RT_NBS_002_RET() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+		
+								v_ae1.start(f_CSE_RT_NBS_002(m_retrieve("NotInitialized", "NotInitialized"), m_createContainerBase)); //Retrieve Container
+								v_ae1.done;
 		
+							}
+		
+							testcase TC_CSE_RT_NBS_002_DEL() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+		
+								v_ae1.start(f_CSE_RT_NBS_002(m_delete("NotInitialized", "NotInitialized"), m_createContainerBase)); //Delete Container
+								v_ae1.done;
+		
+							}
+		
+						}// end group g_CSE_RT_NBS_002
+				
+						group g_CSE_RT_NBS_003{
+					
+							/**
+							 * @desc  Check that the IUT returns successfully the <request> resource after receiving a Non-Blocking Synchronous Request OPERATION and it contains the expected result in operationResult attribute
+							 * 
+							 */
+							testcase TC_CSE_RT_NBS_003_CRE() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+		
+								v_ae1.start(f_CSE_RT_NBS_003(m_createContainerBase, -, int1)); //Create Container
+								v_ae1.done;
+		
+							}
+		
+							testcase TC_CSE_RT_NBS_003_UPD() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var template RequestPrimitive v_updateRequest := m_updateContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+								var Labels v_labels_1 := {"VALUE_1"};
+						
+								v_updateRequest.primitiveContent.container.labels := v_labels_1;
+		
+								v_ae1.start(f_CSE_RT_NBS_003(m_updateContainerBase, m_createContainerBase, int3)); //Update Container
+								v_ae1.done;
+		  
+							}
+		
+							testcase TC_CSE_RT_NBS_003_RET() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+		
+								v_ae1.start(f_CSE_RT_NBS_003(m_retrieve("NotInitialized", "NotInitialized"), m_createContainerBase, int2)); //Retrieve Container
+								v_ae1.done;
+		
+							}
+		
+							testcase TC_CSE_RT_NBS_003_DEL() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+		
+								v_ae1.start(f_CSE_RT_NBS_003(m_delete("NotInitialized", "NotInitialized"), m_createContainerBase, int4)); //Delete Container
+								v_ae1.done;
+		
+							}
+		
+						}// end group g_CSE_RT_NBS_003
+				
+					}// end group Synchronous	
+		
+					group Asynchronous{
+						group g_CSE_RT_NBA_001 {
+					
+							/**
+							 * @desc Check that the IUT responds to a Non-Blocking Asynchronous Request without a reference to a resource containing the context of the request if the IUT does not support the <request> resource
+							 * 
+							 */
+							testcase TC_CSE_RT_NBA_001_CRE() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+		
+								v_ae1.start(f_CSE_RT_NBA_001(m_createContainerBase, -)); //Create Container
+								v_ae1.done;
+		
+							}
+		
+							testcase TC_CSE_RT_NBA_001_UPD() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var template RequestPrimitive v_updateRequest := m_updateContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+								var Labels v_labels_1 := {"VALUE_1"};
+						
+								v_updateRequest.primitiveContent.container.labels := v_labels_1;
+		
+								v_ae1.start(f_CSE_RT_NBA_001(m_updateContainerBase, m_createContainerBase)); //Update Container
+								v_ae1.done;
+		  
+							}
+		
+							testcase TC_CSE_RT_NBA_001_RET() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+		
+								v_ae1.start(f_CSE_RT_NBA_001(m_retrieve("NotInitialized", "NotInitialized"), m_createContainerBase)); //Retrieve Container
+								v_ae1.done;
+		
+							}
+		
+							testcase TC_CSE_RT_NBA_001_DEL() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+		
+								v_ae1.start(f_CSE_RT_NBA_001(m_delete("NotInitialized", "NotInitialized"), m_createContainerBase)); //Delete Container
+								v_ae1.done;
+		
+							}
+		
+						}// end group g_CSE_RT_NBA_001
+						
+						group g_CSE_RT_NBA_002{
+					
+							/**
+							 * @desc Check that the IUT responds to a Non-Blocking Asynchronous Request with the reference of a <request> resource provided within the Content parameter of the Response 
+							 * 
+							 */
+							testcase TC_CSE_RT_NBA_002_CRE() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+		
+								v_ae1.start(f_CSE_RT_NBA_002(m_createContainerBase, -)); //Create Container
+								v_ae1.done;
+		
+							}
+		
+							testcase TC_CSE_RT_NBA_002_UPD() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var template RequestPrimitive v_updateRequest := m_updateContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+								var Labels v_labels_1 := {"VALUE_1"};
+						
+								v_updateRequest.primitiveContent.container.labels := v_labels_1;
+		
+								v_ae1.start(f_CSE_RT_NBA_002(m_updateContainerBase, m_createContainerBase)); //Update Container
+								v_ae1.done;
+		  
+							}
+		
+							testcase TC_CSE_RT_NBA_002_RET() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+		
+								v_ae1.start(f_CSE_RT_NBA_002(m_retrieve("NotInitialized", "NotInitialized"), m_createContainerBase)); //Retrieve Container
+								v_ae1.done;
+		
+							}
+		
+							testcase TC_CSE_RT_NBA_002_DEL() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+		
+								v_ae1.start(f_CSE_RT_NBA_002(m_delete("NotInitialized", "NotInitialized"), m_createContainerBase)); //Delete Container
+								v_ae1.done;
+		
+							}
+		
+						}// end group g_CSE_RT_NBA_002
+						
+						group g_CSE_RT_NBA_003{
+					
+							/**
+							 * @desc Check that the IUT sends the result of the requested Non-Blocking Asynchronous OPERATION as notification to the Originator when no notification target list is provided 
+							 * 
+							 */
+							testcase TC_CSE_RT_NBA_003_CRE() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+		
+								v_ae1.start(f_CSE_RT_NBA_003(m_createContainerBase, -, int2001)); //Create Container
+								v_ae1.done;
+		
+							}
+		
+							testcase TC_CSE_RT_NBA_003_UPD() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var template RequestPrimitive v_updateRequest := m_updateContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+								var Labels v_labels_1 := {"VALUE_1"};
+		
+								v_updateRequest.primitiveContent.container.labels := v_labels_1;
+		
+								v_ae1.start(f_CSE_RT_NBA_003(v_updateRequest, m_createContainerBase, int2004)); //Update Container
+								v_ae1.done;
+		  
+							}
+		
+							testcase TC_CSE_RT_NBA_003_RET() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+		
+								v_ae1.start(f_CSE_RT_NBA_003(m_retrieve("NotInitialized", "NotInitialized"), m_createContainerBase, int2000)); //Retrieve Container
+								v_ae1.done;
+		
+							}
+		
+							testcase TC_CSE_RT_NBA_003_DEL() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+		
+								v_ae1.start(f_CSE_RT_NBA_003(m_delete("NotInitialized", "NotInitialized"), m_createContainerBase, int2002)); //Delete Container
+								v_ae1.done;
+		
+							}
+		
+						}// end group g_CSE_RT_NBA_003
+						
+						group g_CSE_RT_NBA_004{
+					
+							/**
+							 * @desc Check that the IUT does not send the result of the requested Non-Blocking Asynchronous OPERATION as notification to the Originator when an empty notification target list is provided 
+							 * 
+							 */
+							testcase TC_CSE_RT_NBA_004_CRE() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+		
+								v_ae1.start(f_CSE_RT_NBA_004(m_createContainerBase, -)); //Create Container
+								v_ae1.done;
+		
+							}
+		
+							testcase TC_CSE_RT_NBA_004_UPD() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var template RequestPrimitive v_updateRequest := m_updateContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+								var Labels v_labels_1 := {"VALUE_1"};
+		
+								v_updateRequest.primitiveContent.container.labels := v_labels_1;
+		
+								v_ae1.start(f_CSE_RT_NBA_004(m_updateContainerBase, m_createContainerBase)); //Update Container
+								v_ae1.done;
+		  
+							}
+		
+							testcase TC_CSE_RT_NBA_004_RET() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+		
+								v_ae1.start(f_CSE_RT_NBA_004(m_retrieve("NotInitialized", "NotInitialized"), m_createContainerBase)); //Retrieve Container
+								v_ae1.done;
+		
+							}
+		
+							testcase TC_CSE_RT_NBA_004_DEL() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+		
+								v_ae1.start(f_CSE_RT_NBA_004(m_delete("NotInitialized", "NotInitialized"), m_createContainerBase)); //Delete Container
+								v_ae1.done;
+		
+							}
+		
+						}// end group g_CSE_RT_NBA_004
+						
+						group g_CSE_RT_NBA_005{
+					
+							/**
+							 * @desc Check that the IUT sends the result of the requested Non-Blocking Asynchronous OPERATION as notification to the Originator when no notification target list is provided 
+							 * 
+							 */
+							testcase TC_CSE_RT_NBA_005_CRE() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+		
+								v_ae1.start(f_CSE_RT_NBA_005(m_createContainerBase, -, int2001)); //Create Container
+								v_ae1.done;
+		
+							}
+		
+							testcase TC_CSE_RT_NBA_005_UPD() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var template RequestPrimitive v_updateRequest := m_updateContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+								var Labels v_labels_1 := {"VALUE_1"};
+		
+								v_updateRequest.primitiveContent.container.labels := v_labels_1;
+		
+								v_ae1.start(f_CSE_RT_NBA_005(m_updateContainerBase, m_createContainerBase, int2004)); //Update Container
+								v_ae1.done;
+		  
+							}
+		
+							testcase TC_CSE_RT_NBA_005_RET() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+		
+								v_ae1.start(f_CSE_RT_NBA_005(m_retrieve("NotInitialized", "NotInitialized"), m_createContainerBase, int2000)); //Retrieve Container
+								v_ae1.done;
+		
+							}
+		
+							testcase TC_CSE_RT_NBA_005_DEL() runs on Tester system CseSystem {
+								// Local variables
+								var template RequestPrimitive v_createRequest := m_createContainerBase;
+								var AeSimu v_ae1 := AeSimu.create("AE1") alive;
+		
+								v_ae1.start(f_CSE_RT_NBA_005(m_delete("NotInitialized", "NotInitialized"), m_createContainerBase, int2002)); //Delete Container
+								v_ae1.done;
+		
+							}
+		
+						}// end group g_CSE_RT_NBA_005
+		
+					}// end group Asynchronous	
+		
+				}// end group Non_Blocking_Requests
+	
+			}//end of group Response Type
+
+		}//end of group Communication_Management_And_Delivery_Handling
+				
 		group FlexContainer {
 					
 			group Create {