diff --git a/OneM2M_PermutationFunctions.ttcn b/OneM2M_PermutationFunctions.ttcn
index 187647988eecf5d848baf1e39916b1057e5165d8..bd33fdc45f8141d9a1d6870ab6df88634ff57fbb 100644
--- a/OneM2M_PermutationFunctions.ttcn
+++ b/OneM2M_PermutationFunctions.ttcn
@@ -4321,6 +4321,7 @@ module OneM2M_PermutationFunctions {
 						var RequestPrimitive v_request;
 						var integer v_parentIndex := -1;
 						var integer v_resourceIndex := -1;
+						var integer v_originalResourceIndex := -1;
 						var integer v_aEAnncIndex := -1;
 						   
 						// Test control
@@ -4335,6 +4336,27 @@ module OneM2M_PermutationFunctions {
 						
 						v_aEAnncIndex := f_cse_createResource_cseSimu(int10002, m_createAEAnnc(-, vc_cseSimuDesc.cseId, omit, -), vc_remoteCseIndex); //AEAnnnc under RemoteCSE
 		
+						//Create original resource locally if resource type is an announced variant
+						if (p_resourceType == int10001) {
+							v_originalResourceIndex := f_generateAndSetLocalResource(m_primitiveContentAccessControlPolicy(m_contentCreateAcp), -, int1);
+						} else if(p_resourceType == int10002) {
+							v_originalResourceIndex := f_generateAndSetLocalResource(m_primitiveContentAe(m_contentCreateAe(omit, -, PX_TS_AE1.appId, omit)), -, int2);
+						} else if (p_resourceType == int10003) {
+							v_originalResourceIndex := f_generateAndSetLocalResource(m_primitiveContentContainer(m_contentCreateContainer), -, int3);
+						} else if (p_resourceType == int10004) {
+							v_originalResourceIndex := f_generateAndSetLocalResource(m_primitiveContentContentInstance(m_contentCreateContentInstance), -, int4);
+						} else if (p_resourceType == int10009) {
+							v_originalResourceIndex := f_generateAndSetLocalResource(m_primitiveContentGroup(m_contentCreateGroup(1, {"NotInitialized"}, omit, -, -, -, -, -)), -, int9);
+						} else if (p_resourceType == int10029) {
+							v_originalResourceIndex := f_generateAndSetLocalResource(m_primitiveContentTimeSeries(m_contentCreateTimeSeries), -, int29);
+						} else if (p_resourceType == int10030) {
+							v_originalResourceIndex := f_generateAndSetLocalResource(m_primitiveContentTimeSeriesInstance(m_contentCreateTimeSeriesInstance), -, int30);
+						}
+						if(v_originalResourceIndex != -1) {
+							p_requestPrimitive.primitiveContent := f_setLink(valueof(p_requestPrimitive.primitiveContent), f_getLocalResourceAddress(v_originalResourceIndex, -, e_spRelative));
+							p_requestPrimitive.primitiveContent := f_setExpirationTime(valueof(p_requestPrimitive.primitiveContent), vc_localResourcesList[v_originalResourceIndex].resource);
+						}
+						
 						// Test Body
 	
 						v_request := f_getCreateRequestPrimitive(p_resourceType, p_requestPrimitive, v_aEAnncIndex);