diff --git a/library/RLCMAC_CSN1_Types.ttcn b/library/RLCMAC_CSN1_Types.ttcn
index d9a5662..2093f55 100644
--- a/library/RLCMAC_CSN1_Types.ttcn
+++ b/library/RLCMAC_CSN1_Types.ttcn
@@ -705,6 +705,7 @@
 
 	/* 11.2.0.1 */
 	type union RlcmacDlCtrlUnion {
+		PacketAccessReject	access_reject,
 		PacketDlAssignment	dl_assignment,
 		PacketMeasOrder		meas_order,
 		PacketUlAssignment	ul_assignment,
@@ -721,7 +722,8 @@
 		RlcmacDlCtrlMsgType	msg_type,
 		RlcmacDlCtrlUnion	u
 	} with {
-		variant (u) "CROSSTAG(dl_assignment,	msg_type = PACKET_DL_ASSIGNMENT;
+		variant (u) "CROSSTAG(access_reject,	msg_type = PACKET_ACCESS_REJECT;
+				      dl_assignment,	msg_type = PACKET_DL_ASSIGNMENT;
 				      meas_order,	msg_type = PACKET_MEASUREMENT_ORDER;
 				      ul_assignment,	msg_type = PACKET_UL_ASSIGNMENT;
 				      paging,		msg_type = PACKET_PAGING_REQUEST;
@@ -739,6 +741,35 @@
 	external function dec_RlcmacDlCtrlMsg(in octetstring stream) return RlcmacDlCtrlMsg
 		with { extension "prototype(convert) decode(RAW)" };
 
+	/* 11.2.1 Packet Access Reject */
+	type record PacketAccessRejectIDSub {
+		BIT1			id_type,
+		PacketRequestReference	req_ref optional,
+		GlobalTfi gtfi optional
+	} with { variant (req_ref) "PRESENCE(id_type = '0'B)"
+		 variant (gtfi) "PRESENCE(id_type = '1'B)"
+	};
+	type union PacketAccessRejectID {
+		GprsTlli tlli,
+		PacketAccessRejectIDSub id_sub
+	} with { variant (tlli) "BYTEORDER(first)" };
+	type record PacketAccessRejectStruct {
+		BIT1			id_type,
+		PacketAccessRejectID	id,
+		BIT1			wait_ind_presence,
+		uint8_t			wait_ind optional,
+		BIT1			wait_ind_size optional
+	} with { variant (id) "CROSSTAG(tlli, id_type = '0'B; id_sub, id_type = '1'B)"
+		 variant (wait_ind) "PRESENCE(wait_ind_presence = '1'B)"
+		 variant (wait_ind_size) "PRESENCE(wait_ind_presence = '1'B)"
+	};
+	type record PacketAccessReject {
+		PageMode		page_mode,
+		PacketAccessRejectStruct reject_struct
+		/* TODO: Additional Reject */
+		/* TODO: Rel5 additions */
+	} with { variant "" };
+
 
 	/* 11.2.6 Packet Downlink Ack/Nack */
 	type record ILevel {
