diff --git a/library/RLCMAC_CSN1_Templates.ttcn b/library/RLCMAC_CSN1_Templates.ttcn
index ef8c952..a4f59f0 100644
--- a/library/RLCMAC_CSN1_Templates.ttcn
+++ b/library/RLCMAC_CSN1_Templates.ttcn
@@ -180,6 +180,99 @@
 		}
 	};
 
+	/* TS 44.060 sec 11.2.3a */
+	template (value) RlcmacUlCtrlMsg ts_RlcMacUlCtrl_PKT_CELL_CHG_NOTIF_UTRAN(uint5_t tfi,
+						uint14_t uarfcn,
+						uint10_t scrambling_code,
+						template (value) CCNMeasReport ccn_meas_rep := ccn_meas_rep_def)
+	:= {
+		msg_type := PACKET_CELL_CHANGE_NOTIFICATION,
+		u := {
+			cell_chg_notif := {
+				gtfi := {
+					is_dl_tfi := false,
+					tfi := tfi
+				},
+				u := {
+					u10 := {
+						tag := '10'B,
+						utran_target_cell := {
+							fdd_presence := '1'B,
+							fdd := {
+							    arfcn := uarfcn,
+							    bandwidth_presence := '0'B,
+							    bandwidth := omit,
+							    scrambling_code := scrambling_code
+							},
+							tdd_presence := '0'B,
+							tdd := omit,
+							reporting_quantity := 1
+						}
+					}
+				},
+				ba_psi3_presence := '0'B,
+				ba_used := '0'B,
+				psi3_change_mark := omit,
+				pmo_used := '0'B,
+				pccn_sending := '0'B,
+				ccn_meas_rep := ccn_meas_rep,
+				rel_additions := omit
+			}
+		}
+	};
+
+	/* TS 44.060 sec 11.2.3a */
+	template (value) RlcmacUlCtrlMsg ts_RlcMacUlCtrl_PKT_CELL_CHG_NOTIF_EUTRAN(uint5_t tfi,
+						uint16_t earfcn,
+						uint9_t phys_layer_cell_id,
+						template (value) CCNMeasReport ccn_meas_rep := ccn_meas_rep_def)
+	:= {
+		msg_type := PACKET_CELL_CHANGE_NOTIFICATION,
+		u := {
+			cell_chg_notif := {
+				gtfi := {
+					is_dl_tfi := false,
+					tfi := tfi
+				},
+				u := {
+					u110 := {
+						tag := '110'B,
+						arfcn_bsic_presence := '0'B,
+						arfcn := omit,
+						bsic := omit,
+
+						utran_target_cell_presence := '0'B,
+						utran_target_cell := omit,
+
+						eutran_target_cell_presence := '1'B,
+						eutran_target_cell := {
+							earfcn := earfcn,
+							meas_bandwidth_presence := '0'B,
+							meas_bandwidth := omit,
+							phys_layer_cell_id := phys_layer_cell_id,
+							reporting_quantity := 1
+						},
+						eutran_ccn_meas_rep_presence := '1'B,
+						eutran_ccn_meas_rep := {
+							utran_ba_used := 0,
+							n_eutran := 1,
+							cells := {{frequency_list_index := 1,
+								   cell_identity := phys_layer_cell_id,
+								   reporting_quantity := 1}}
+						}
+					}
+				},
+				ba_psi3_presence := '0'B,
+				ba_used := '0'B,
+				psi3_change_mark := omit,
+				pmo_used := '0'B,
+				pccn_sending := '0'B,
+				ccn_meas_rep := ccn_meas_rep,
+				rel_additions := omit
+			}
+		}
+	};
+
 	/* TS 44.060 sec 11.2.2a */
 	template RlcmacDlCtrlMsg tr_RlcMacDlCtrl_PKT_CELL_CHG_CONTINUE(template GlobalTfi tfi := ?)
 	:= {
