diff --git a/upf/UPF_Tests.ttcn b/upf/UPF_Tests.ttcn
index 140e81b..cb8c489 100644
--- a/upf/UPF_Tests.ttcn
+++ b/upf/UPF_Tests.ttcn
@@ -125,7 +125,7 @@
 	if (not f_get_name_val(token, str, name)) {
 		return false;
 	}
-	var ro_charstring nrl := f_str_split(token, delim);
+	var Misc_Helpers.ro_charstring nrl := f_str_split(token, delim);
 	if (lengthof(nrl) != 2) {
 		return false;
 	}
@@ -270,7 +270,7 @@
 
 private function f_vty_get_gtp_actions(TELNETasp_PT vty_pt) return GTP_Action_List {
 	var charstring gtp_str := f_vty_transceive_ret(vty_pt, "show gtp");
-	var ro_charstring lines := f_str_split(gtp_str, "\n");
+	var Misc_Helpers.ro_charstring lines := f_str_split(gtp_str, "\n");
 	var GTP_Action_List gtps := {};
 	for (var integer i := 0; i < lengthof(lines); i := i + 1) {
 		var charstring line := lines[i];
@@ -399,7 +399,7 @@
 
 private function f_vty_get_sessions(TELNETasp_PT vty_pt) return PFCP_Session_Status_List {
 	var charstring sessions_str := f_vty_transceive_ret(vty_pt, "show session");
-	var ro_charstring lines := f_str_split(sessions_str, "\n");
+	var Misc_Helpers.ro_charstring lines := f_str_split(sessions_str, "\n");
 	var PFCP_Session_Status_List sessions := {};
 	for (var integer i := 0; i < lengthof(lines); i := i + 1) {
 		var charstring line := lines[i];
@@ -483,7 +483,7 @@
 	setverdict(pass);
 }
 
-private function f_vty_netinst_cfg(TELNETasp_PT vty_pt, ro_charstring netinst_cmds)
+private function f_vty_netinst_cfg(TELNETasp_PT vty_pt, Misc_Helpers.ro_charstring netinst_cmds)
 {
 	f_vty_enter_config(vty_pt);
 	f_vty_transceive(vty_pt, "netinst");
