diff --git a/library/GSM_RestOctets.ttcn b/library/GSM_RestOctets.ttcn
index 39f15bb..2b43751 100644
--- a/library/GSM_RestOctets.ttcn
+++ b/library/GSM_RestOctets.ttcn
@@ -378,7 +378,7 @@
 
 /* Repeated E-UTRAN Neighbour Cells */
 private type record of EUTRAN_NeighbourCells EUTRAN_RepeatedNeighbourCells;
-private type record EUTRAN_NeighbourCells {
+type record EUTRAN_NeighbourCells {
 	BIT1				item_ind ('1'B),
 	/* { 1 < Repeated E-UTRAN Neighbour Cells > } ** 0 */
 	EUTRAN_CellDescs		cell_desc_list optional,
@@ -398,8 +398,8 @@
 };
 
 /* Repeated E-UTRAN Cell Description (E-ARFCN & Measurement Bandwidth) List */
-private type record of EUTRAN_CellDesc EUTRAN_CellDescs;
-private type record EUTRAN_CellDesc {
+type record of EUTRAN_CellDesc EUTRAN_CellDescs;
+type record EUTRAN_CellDesc {
 	BIT1				item_ind ('1'B),
 	uint16_t			e_arfcn,
 	BIT1				meas_bw_presence, // 0/1
@@ -513,6 +513,136 @@
 	rel_additions := { rel5_presence := CSN1_L, rel5 := omit }
 };
 
+template SI2quaterRestOctets tro_SI2quaterRestOctets_rel8_EUTRAN
+modifies tro_SI2quaterRestOctets_base
+:= {
+	ba_ind := ?,
+	ba_3g_ind := ?,
+	mp_change_mark := ?,
+	si2quater_index := ?,
+	si2quater_count := ?,
+
+	rel_additions := {
+		rel5_presence := CSN1_H,
+		rel5 := {
+			umts_add_meas_params_desc := { presence := '0'B, desc := omit },
+			umts_add_meas_params_desc2 := { presence := '0'B, desc := omit },
+			rel6_presence := CSN1_H,
+			rel6 := {
+				umts_ccn_active := '0'B,
+				rel7_presence := CSN1_H,
+				rel7 := {
+					rep700 := { presence := '0'B, val := omit },
+					rep810 := { presence := '0'B, val := omit },
+					rel8_presence := CSN1_H,
+					rel8 := {
+						prio_eutran_params_desc := {
+							presence := '1'B,
+							desc := {
+								sc_prio_params_desc := { presence := '0'B, desc := omit },
+								utran_prio_params_desc := { presence := '0'B, desc := omit },
+								eutran_params_desc := {
+									presence := '1'B,
+									desc := {
+										ccn_active := ?,
+										e_start := ?,
+										e_stop := ?,
+										meas_params_desc := { presence := '0'B, desc := omit },
+										gprs_meas_params_desc := { presence := '0'B, desc := omit },
+										repeated_neigh_cells := *,
+										repeated_neigh_cells_term := '0'B,
+										repeated_not_allowed_cells := omit,
+										repeated_not_allowed_cells_term := '0'B,
+										pcid2ta_map_list := omit,
+										pcid2ta_map_list_term := '0'B
+									}
+								}
+							}
+						},
+						utran_csg_desc := { presence := '0'B, desc := omit },
+						eutran_csg_desc := { presence := '0'B, desc := omit }
+					}
+				}
+			}
+		}
+	}
+};
+
+template EUTRAN_CellDesc tr_EUTRAN_CellDesc(template (present) uint16_t e_arfcn := ?,
+					    template (present) BIT1 meas_bw_presence := ?,
+					    template uint3_t meas_bw := *)
+:= {
+	item_ind := '1'B,
+	e_arfcn := e_arfcn,
+	meas_bw_presence := meas_bw_presence,
+	meas_bw := meas_bw
+}
+
+/* Defaults correspond to osmo-bsc cfg:
+ *   si2quater neighbor-list add earfcn 111 thresh-hi 20 thresh-lo 10 prio 3 qrxlv 22 meas 3
+ */
+template EUTRAN_NeighbourCells tr_EUTRAN_NeighbourCells(template (present) EUTRAN_CellDescs cell_desc_list := { tr_EUTRAN_CellDesc },
+							template (present) BIT1 prio_presence := ?,
+							template uint3_t prio := *,
+							template (present) uint5_t thresh_high := ?,
+							template (present) BIT1 thresh_low_presence := ?,
+							template uint5_t thresh_low := *,
+							template (present) BIT1 qrxlevmin_presence := ?,
+							template uint5_t qrxlevmin := *)
+:= {
+	item_ind := '1'B,
+	cell_desc_list := cell_desc_list,
+	cell_desc_list_term := '0'B,
+	prio_presence := prio_presence,
+	prio := prio,
+	thresh_high := thresh_high,
+	thresh_low_presence := thresh_low_presence,
+	thresh_low := thresh_low,
+	qrxlevmin_presence := qrxlevmin_presence,
+	qrxlevmin := qrxlevmin
+};
+
+template SI2quaterRestOctets tr_SI2quaterRestOctets_EUTRAN(
+	template integer index := 0,
+	template integer count := 0,
+	template EUTRAN_RepeatedNeighbourCells repeated_neigh_cells := { tr_EUTRAN_NeighbourCells }
+) modifies tro_SI2quaterRestOctets_rel8_EUTRAN := {
+	si2quater_index := index,
+	si2quater_count := count,
+	rel_additions := {
+		rel5 := {
+			rel6 := {
+				rel7 := {
+					rel8 := {
+						prio_eutran_params_desc := {
+							desc := {
+								sc_prio_params_desc := {
+									presence := '1'B,
+									desc := {
+										geran_priority := 0,
+										thresh_priority_search := 0,
+										thresh_gsm_low := 0,
+										h_prio := 0,
+										t_reselection := 0
+									}
+								},
+								eutran_params_desc := {
+									desc := {
+										ccn_active := '0'B,
+										e_start := '1'B,
+										e_stop := '1'B,
+										repeated_neigh_cells := repeated_neigh_cells
+									}
+								}
+							}
+						}
+					}
+				}
+			}
+		}
+	}
+};
+
 
 /* 10.5.2.34 SI 3 Rest Octets */
 type record SI3RestOctets {
