add SI3 matching template
diff --git a/sysinfo/GSM_SystemInformation.ttcn b/sysinfo/GSM_SystemInformation.ttcn
index 86cba2a..4a7bfd5 100644
--- a/sysinfo/GSM_SystemInformation.ttcn
+++ b/sysinfo/GSM_SystemInformation.ttcn
@@ -14,7 +14,7 @@
 		BIT2		zero_one
 	} with { variant "" };
 
-	template L2PseudoLength t_L2Pseudolength(uint6_t len) := {
+	template L2PseudoLength t_L2Pseudolength(template uint6_t len) := {
 		l2_plen := len,
 		zero_one := '01'B
 	};
@@ -36,8 +36,9 @@
 		RrMessageType	message_type
 	} with { variant "" };
 
-	template SystemInformationHeader t_SiHeader(RrMessageType msg_type, uint6_t len) := {
+	template SystemInformationHeader t_SiHeader(RrMessageType msg_type, template uint6_t len) := {
 		l2_plen := t_L2Pseudolength(len),
+		skip_indicator := 0,
 		rr_protocol_discriminator := 6,
 		message_type := msg_type
 	};
@@ -112,6 +113,8 @@
 		uint8_t		t3212
 	} with { variant "" };
 
+	template ControlChannelDescription t_ControlChannelDescription := { ?, ?, ?, ?, ?, ?, '00'B, ?, ? };
+
 	/* 44.018 10.5.2.21 */
 	type record MobileAllocation {
 		OCT1		iei,
@@ -183,6 +186,17 @@
 		Si3RestOctets			rest_octets
 	} with { variant "" };
 
+	template SystemInformationType3 t_SI3 := {
+		cell_id := ?,
+		lai := ?,
+		ctrl_chan_desc := t_ControlChannelDescription,
+		cell_options := ?,
+		cell_sel_par := ?,
+		rach_control := ?,
+		rest_octets := ?
+	};
+		
+
 	/* 44.018 9.1.36 */
 	type record SystemInformationType4 {
 		//SystemInformationHeader		header,