diff --git a/library/S1AP_Emulation.ttcn b/library/S1AP_Emulation.ttcn
index bb3a2a4..9f36225 100644
--- a/library/S1AP_Emulation.ttcn
+++ b/library/S1AP_Emulation.ttcn
@@ -503,6 +503,11 @@
 						if (match(nas, tr_NAS_EMM_SecurityProtected)) {
 							nas := f_nas_try_decaps(S1apAssociationTable[assoc_id].nus, nas);
 						}
+						/* DL/UlNasTransport are not interesting, don't send them */
+						if (not match(mrf.msg, (tr_S1AP_DlNasTransport, tr_S1AP_UlNasTransport))) {
+							/* send raw S1AP */
+							S1AP_CLIENT.send(mrf.msg) to vc_conn;
+						}
 						/* send decoded NAS */
 						S1AP_CLIENT.send(nas) to vc_conn;
 					} else {
@@ -771,7 +776,7 @@
 
 function f_S1AP_get_NAS_PDU(S1AP_PDU s1ap) return template (omit) NAS_PDU
 {
-	var integer i;
+	var integer i, j;
 
 	if (ischosen(s1ap.initiatingMessage)) {
 		var InitiatingMessage im := s1ap.initiatingMessage;
@@ -792,6 +797,19 @@
 				}
 			}
 			}
+		case (tr_S1AP_IntialCtxSetupReq) {
+			var InitialContextSetupRequest msg := im.value_.initialContextSetupRequest;
+			for (i := 0; i < lengthof(msg.protocolIEs); i := i+1) {
+				if (msg.protocolIEs[i].id == id_E_RABToBeSetupListCtxtSUReq) {
+					var E_RABToBeSetupListCtxtSUReq rab_req := msg.protocolIEs[i].value_.E_RABToBeSetupListCtxtSUReq;
+					for (j := 0; j < lengthof(rab_req); j := j+1) {
+						var E_RABToBeSetupItemCtxtSUReq it := rab_req[j].value_.E_RABToBeSetupItemCtxtSUReq;
+						return it.nAS_PDU;
+					}
+				}
+			}
+			return omit;
+		}
 		}
 	}
 	return omit;
