diff --git a/library/RAN_Emulation.ttcnpp b/library/RAN_Emulation.ttcnpp
index f410427..3158dc4 100644
--- a/library/RAN_Emulation.ttcnpp
+++ b/library/RAN_Emulation.ttcnpp
@@ -526,12 +526,12 @@
 	T.start;
 	alt {
 	[] BSSAP.receive(tr_BSSAP_UNITDATA_ind(own, peer, tr_BSSMAP_ResetAck(append_osmux_support))) {
-		log("Received RESET-ACK in response to RESET, we're ready to go!");
+		log("BSSMAP: Received RESET-ACK in response to RESET, we're ready to go!");
 		}
 	[] as_reset_ack(append_osmux_support);
 	[] BSSAP.receive { repeat };
 	[] T.timeout {
-		setverdict(fail, "Timeout waiting for RESET-ACK after sending RESET");
+		setverdict(fail, "BSSMAP: Timeout waiting for RESET-ACK after sending RESET");
 		mtc.stop;
 		}
 	}
@@ -680,12 +680,12 @@
 	T.start;
 	alt {
 	[] RANAP.receive(tr_RANAP_UNITDATA_ind(own, peer, tr_RANAP_ResetAck)) {
-		log("Received RESET-ACK in response to RESET, we're ready to go!");
+		log("RANAP: Received RESET-ACK in response to RESET, we're ready to go!");
 		}
 	[] as_reset_ack();
 	[] RANAP.receive { repeat };
 	[] T.timeout {
-		setverdict(fail, "Timeout waiting for RESET-ACK after sending RESET");
+		setverdict(fail, "RANAP: Timeout waiting for RESET-ACK after sending RESET");
 		mtc.stop;
 		}
 	}
@@ -791,7 +791,7 @@
 #endif
 #ifdef RAN_EMULATION_BSSAP
 	[] BSSAP.receive(tr_BSSAP_UNITDATA_ind(?, ?, tr_BSSMAP_Reset(append_osmux_support))) -> value ud_ind {
-		log("Respoding to inbound RESET with RESET-ACK");
+		log("BSSMAP: Responding to inbound RESET with RESET-ACK");
 		BSSAP.send(ts_BSSAP_UNITDATA_req(ud_ind.callingAddress, ud_ind.calledAddress,
 			   ts_BSSMAP_ResetAck(append_osmux_support)));
 		repeat;
@@ -799,7 +799,7 @@
 #endif
 #ifdef RAN_EMULATION_RANAP
 	[] RANAP.receive(tr_RANAP_UNITDATA_ind(?, ?, tr_RANAP_Reset)) -> value rud_ind {
-		log("Respoding to inbound IuRESET with IuRESET-ACK");
+		log("RANAP: Responding to inbound IuRESET with IuRESET-ACK");
 		var CN_DomainIndicator dom;
 		dom := rud_ind.userData.initiatingMessage.value_.Reset.protocolIEs[1].value_.cN_DomainIndicator;
 		RANAP.send(ts_RANAP_UNITDATA_req(rud_ind.callingAddress, rud_ind.calledAddress,
