diff --git a/bsc/MSC_ConnectionHandler.ttcn b/bsc/MSC_ConnectionHandler.ttcn
index cb93bfe..481abc0 100644
--- a/bsc/MSC_ConnectionHandler.ttcn
+++ b/bsc/MSC_ConnectionHandler.ttcn
@@ -840,26 +840,28 @@
 	var BIT5 inp := ch_desc.channelTypeandTDMAOffset;
 	var uint3_t tn := bit2int(ch_desc.timeslotNumber);
 
-	if (match(inp, '00001'B)) { /* TCH/F */
+	select (inp) {
+	case ('00001'B) { /* TCH/F */
 		chan_nr := valueof(t_RslChanNr_Bm(tn));
-	}
-	else if (match(inp, '11101'B)) { /* VAMOS TCH/F */
+		}
+	case ('11101'B) { /* VAMOS TCH/F */
 		chan_nr := valueof(t_RslChanNr_Osmo_VAMOS_Bm(tn));
-	}
-	else if (match(inp, '0001?'B)) { /* TCH/H */
+		}
+	case ('0001?'B) { /* TCH/H */
 		chan_nr := valueof(t_RslChanNr_Lm(tn, bit2int(substr(inp, 4, 1))));
-	}
-	else if (match(inp, '1111?'B)) { /* VAMOS TCH/H */
+		}
+	case ('1111?'B) { /* VAMOS TCH/H */
 		chan_nr := valueof(t_RslChanNr_Osmo_VAMOS_Lm(tn, bit2int(substr(inp, 4, 1))));
-	}
-	else if (match(inp, '001??'B)) { /* SDCCH/4 */
+		}
+	case ('001??'B) { /* SDCCH/4 */
 		chan_nr := valueof(t_RslChanNr_SDCCH4(tn, bit2int(substr(inp, 3, 2))));
-	}
-	else if (match(inp, '01???'B)) { /* SDCCH/8 */
+		}
+	case ('01???'B) { /* SDCCH/8 */
 		chan_nr := valueof(t_RslChanNr_SDCCH8(tn, bit2int(substr(inp, 2, 3))));
-	}
-	else {
+		}
+	case else {
 		Misc_Helpers.f_shutdown(__BFILE__, __LINE__, fail, "Unknown ChDesc!");
+		}
 	}
 
 	if (ch_desc.octet3 and4b '10'O == '10'O) {
