Class-definitions DEFINITIONS AUTOMATIC TAGS ::=

BEGIN

IMPORTS

	ActiveSetUpdate,
	ActiveSetUpdateComplete,
	ActiveSetUpdateFailure,	
	AssistanceDataDelivery,
	CellChangeOrderFromUTRAN,
	CellChangeOrderFromUTRANFailure,
	CellUpdate,
	CellUpdateConfirm-CCCH,
	CellUpdateConfirm,
	CounterCheck,
	CounterCheckResponse,
	DownlinkDirectTransfer,
	HandoverToUTRANComplete,
	InitialDirectTransfer,
	HandoverFromUTRANCommand-GERANIu,
	HandoverFromUTRANCommand-GSM,
	HandoverFromUTRANCommand-CDMA2000,
	HandoverFromUTRANFailure,
	MBMSAccessInformation,
	MBMSCommonPTMRBInformation,
	MBMSCurrentCellPTMRBInformation,
	MBMSGeneralInformation,
	MBMSModificationRequest,
	MBMSModifiedServicesInformation,
	MBMSNeighbouringCellPTMRBInformation,
	MBMSSchedulingInformation,
	MBMSUnmodifiedServicesInformation,
	MeasurementControl,
	MeasurementControlFailure,
	MeasurementReport,
	PagingType1,
	PagingType2,
	PhysicalChannelReconfiguration,
	PhysicalChannelReconfigurationComplete,
	PhysicalChannelReconfigurationFailure,
	PhysicalSharedChannelAllocation,
	PUSCHCapacityRequest,
	RadioBearerReconfiguration,
	RadioBearerReconfigurationComplete,
	RadioBearerReconfigurationFailure,
	RadioBearerRelease,
	RadioBearerReleaseComplete,
	RadioBearerReleaseFailure,
	RadioBearerSetup,
	RadioBearerSetupComplete,
	RadioBearerSetupFailure,
	RRCConnectionReject,
	RRCConnectionRelease,
	RRCConnectionRelease-CCCH,
	RRCConnectionReleaseComplete,
	RRCConnectionRequest,
	RRCConnectionSetup,
	RRCConnectionSetupComplete,
	RRCStatus,
	SecurityModeCommand,
	SecurityModeComplete,
	SecurityModeFailure,
	SignallingConnectionRelease,
	SignallingConnectionReleaseIndication,
	SystemInformation-BCH,
	SystemInformation-FACH,
	SystemInformationChangeIndication,
	TransportChannelReconfiguration,
	TransportChannelReconfigurationComplete,
	TransportChannelReconfigurationFailure,
	TransportFormatCombinationControl,
	TransportFormatCombinationControlFailure,
	UECapabilityEnquiry,
	UECapabilityInformation,
	UECapabilityInformationConfirm,
	UplinkDirectTransfer,
	UplinkPhysicalChannelControl,
	URAUpdate,
	URAUpdateConfirm,
	URAUpdateConfirm-CCCH,
	UTRANMobilityInformation,
	UTRANMobilityInformationConfirm,
	UTRANMobilityInformationFailure
FROM PDU-definitions

-- User Equipment IEs :
	IntegrityCheckInfo
FROM InformationElements;

--**************************************************************
--
-- Downlink DCCH messages
--
--**************************************************************

DL-DCCH-Message ::= SEQUENCE {
	integrityCheckInfo		IntegrityCheckInfo		OPTIONAL,
	message					DL-DCCH-MessageType
}

DL-DCCH-MessageType ::= CHOICE {
	activeSetUpdate						ActiveSetUpdate,
	assistanceDataDelivery				AssistanceDataDelivery,
	cellChangeOrderFromUTRAN 			CellChangeOrderFromUTRAN,
	cellUpdateConfirm					CellUpdateConfirm,
	counterCheck						CounterCheck,
	downlinkDirectTransfer				DownlinkDirectTransfer,
	handoverFromUTRANCommand-GSM		HandoverFromUTRANCommand-GSM,
	handoverFromUTRANCommand-CDMA2000	HandoverFromUTRANCommand-CDMA2000,
	measurementControl					MeasurementControl,
	pagingType2							PagingType2,
	physicalChannelReconfiguration		PhysicalChannelReconfiguration,
	physicalSharedChannelAllocation		PhysicalSharedChannelAllocation,
	radioBearerReconfiguration			RadioBearerReconfiguration,
	radioBearerRelease					RadioBearerRelease,
	radioBearerSetup					RadioBearerSetup,
	rrcConnectionRelease				RRCConnectionRelease,
	securityModeCommand					SecurityModeCommand,
	signallingConnectionRelease			SignallingConnectionRelease,
	transportChannelReconfiguration		TransportChannelReconfiguration,
	transportFormatCombinationControl	TransportFormatCombinationControl,
	ueCapabilityEnquiry					UECapabilityEnquiry,
	ueCapabilityInformationConfirm		UECapabilityInformationConfirm,
	uplinkPhysicalChannelControl		UplinkPhysicalChannelControl,
	uraUpdateConfirm					URAUpdateConfirm,
	utranMobilityInformation			UTRANMobilityInformation,
	handoverFromUTRANCommand-GERANIu	HandoverFromUTRANCommand-GERANIu,
	mbmsModifiedServicesInformation		MBMSModifiedServicesInformation,
	spare5								NULL,
	spare4								NULL,
	spare3								NULL,
	spare2								NULL,
	spare1								NULL
}

--**************************************************************
--
-- Uplink DCCH messages
--
--**************************************************************

UL-DCCH-Message ::= SEQUENCE {
	integrityCheckInfo		IntegrityCheckInfo		OPTIONAL,
	message					UL-DCCH-MessageType
}

UL-DCCH-MessageType ::= CHOICE {
	activeSetUpdateComplete				ActiveSetUpdateComplete,
	activeSetUpdateFailure				ActiveSetUpdateFailure,
	cellChangeOrderFromUTRANFailure 	CellChangeOrderFromUTRANFailure,
	counterCheckResponse				CounterCheckResponse,
	handoverToUTRANComplete				HandoverToUTRANComplete,
	initialDirectTransfer				InitialDirectTransfer,
	handoverFromUTRANFailure			HandoverFromUTRANFailure,
	measurementControlFailure			MeasurementControlFailure,
	measurementReport					MeasurementReport,
	physicalChannelReconfigurationComplete
										PhysicalChannelReconfigurationComplete,
	physicalChannelReconfigurationFailure
										PhysicalChannelReconfigurationFailure,
	radioBearerReconfigurationComplete	RadioBearerReconfigurationComplete,
	radioBearerReconfigurationFailure	RadioBearerReconfigurationFailure,
	radioBearerReleaseComplete			RadioBearerReleaseComplete,
	radioBearerReleaseFailure			RadioBearerReleaseFailure,
	radioBearerSetupComplete			RadioBearerSetupComplete,
	radioBearerSetupFailure				RadioBearerSetupFailure,
	rrcConnectionReleaseComplete		RRCConnectionReleaseComplete,
	rrcConnectionSetupComplete			RRCConnectionSetupComplete,
	rrcStatus							RRCStatus,
	securityModeComplete				SecurityModeComplete,
	securityModeFailure					SecurityModeFailure,
	signallingConnectionReleaseIndication
										SignallingConnectionReleaseIndication,
	transportChannelReconfigurationComplete
										TransportChannelReconfigurationComplete,
	transportChannelReconfigurationFailure
										TransportChannelReconfigurationFailure,
	transportFormatCombinationControlFailure
										TransportFormatCombinationControlFailure,
	ueCapabilityInformation				UECapabilityInformation,
	uplinkDirectTransfer				UplinkDirectTransfer,
	utranMobilityInformationConfirm		UTRANMobilityInformationConfirm,
	utranMobilityInformationFailure		UTRANMobilityInformationFailure,
	mbmsModificationRequest				MBMSModificationRequest,
	spare1								NULL
}

--**************************************************************
--
-- Downlink CCCH messages
--
--**************************************************************

DL-CCCH-Message ::= SEQUENCE {
	integrityCheckInfo		IntegrityCheckInfo		OPTIONAL,
	message					DL-CCCH-MessageType
}

DL-CCCH-MessageType ::= CHOICE {	
	cellUpdateConfirm					CellUpdateConfirm-CCCH,
	rrcConnectionReject					RRCConnectionReject,
	rrcConnectionRelease				RRCConnectionRelease-CCCH,
	rrcConnectionSetup					RRCConnectionSetup,
	uraUpdateConfirm					URAUpdateConfirm-CCCH,
	spare3								NULL,
	spare2								NULL,
	spare1								NULL
}

--**************************************************************
--
-- Uplink CCCH messages
--
--**************************************************************

UL-CCCH-Message ::= SEQUENCE {
	integrityCheckInfo		IntegrityCheckInfo		OPTIONAL,
	message					UL-CCCH-MessageType
}

UL-CCCH-MessageType ::= CHOICE {
	cellUpdate							CellUpdate,
	rrcConnectionRequest				RRCConnectionRequest,
	uraUpdate							URAUpdate,
	spare								NULL
}

--**************************************************************
--
-- PCCH messages
--
--**************************************************************

PCCH-Message ::= SEQUENCE {
	message				PCCH-MessageType
}

PCCH-MessageType ::= CHOICE {
	pagingType1							PagingType1,
	spare								NULL
}

--**************************************************************
--
-- Downlink SHCCH messages
--
--**************************************************************

DL-SHCCH-Message ::= SEQUENCE {
	message					DL-SHCCH-MessageType
}

DL-SHCCH-MessageType ::= CHOICE {
	physicalSharedChannelAllocation		PhysicalSharedChannelAllocation,
	spare								NULL
}

--**************************************************************
--
-- Uplink SHCCH messages
--
--**************************************************************

UL-SHCCH-Message ::= SEQUENCE {
	message					UL-SHCCH-MessageType
}

UL-SHCCH-MessageType ::= CHOICE {
	puschCapacityRequest				PUSCHCapacityRequest,
	spare								NULL
}


--**************************************************************
--
-- BCCH messages sent on FACH
--
--**************************************************************

BCCH-FACH-Message ::= SEQUENCE {
	message				BCCH-FACH-MessageType
}

BCCH-FACH-MessageType ::= CHOICE {
	systemInformation					SystemInformation-FACH,
	systemInformationChangeIndication	SystemInformationChangeIndication,
	spare2								NULL,
	spare1								NULL
}

--**************************************************************
--
-- BCCH messages sent on BCH
--
--**************************************************************

BCCH-BCH-Message ::= SEQUENCE {
	message				SystemInformation-BCH
}

--**************************************************************
--
-- MCCH messages
--
--**************************************************************

MCCH-Message ::= SEQUENCE {
	message				MCCH-MessageType
}

MCCH-MessageType ::= CHOICE {
	mbmsAccessInformation				MBMSAccessInformation,
	mbmsCommonPTMRBInformation			MBMSCommonPTMRBInformation,
	mbmsCurrentCellPTMRBInformation		MBMSCurrentCellPTMRBInformation,
	mbmsGeneralInformation				MBMSGeneralInformation,
	mbmsModifiedServicesInformation		MBMSModifiedServicesInformation,
	mbmsNeighbouringCellPTMRBInformation
										MBMSNeighbouringCellPTMRBInformation,
	mbmsUnmodifiedServicesInformation	MBMSUnmodifiedServicesInformation,
	spare9								NULL,
	spare8								NULL,
	spare7								NULL,
	spare6								NULL,
	spare5								NULL,
	spare4								NULL,
	spare3								NULL,
	spare2								NULL,
	spare1								NULL
}

--**************************************************************
--
-- MSCH messages
--
--**************************************************************

MSCH-Message ::= SEQUENCE {
	message				MSCH-MessageType
}

MSCH-MessageType ::= CHOICE {
	mbmsSchedulingInformation			MBMSSchedulingInformation,
	spare3								NULL,
	spare2								NULL,
	spare1								NULL
}

END


--**************************************************************
--
-- TABULAR: The message type and integrity check info are not
-- visible in this module as they are defined in the class module. 
-- Also, all FDD/TDD specific choices have the FDD option first 
-- and TDD second, just for consistency.
--
--**************************************************************

PDU-definitions DEFINITIONS AUTOMATIC TAGS ::=

BEGIN

--**************************************************************
--
-- IE parameter types from other modules
--
--**************************************************************

IMPORTS

-- Core Network IEs :
	CN-DomainIdentity,
	CN-InformationInfo,
	CN-InformationInfo-r6,
	CN-InformationInfoFull,
	NAS-Message,
	PagingRecordTypeID,
	PLMN-Identity,
-- UTRAN Mobility IEs :
	CellIdentity,
	CellIdentity-PerRL-List,
	URA-Identity,
-- User Equipment IEs :
	UE-RadioAccessCapabBandFDDList2,
	UE-RadioAccessCapabBandFDDList-ext,
	AccessStratumReleaseIndicator,
	ActivationTime,
	C-RNTI,
	CapabilityUpdateRequirement,
	CapabilityUpdateRequirement-r4,
	CapabilityUpdateRequirement-r4-ext,
	CapabilityUpdateRequirement-r5,
	CellUpdateCause,
	CellUpdateCause-ext,
	CipheringAlgorithm,
	CipheringModeInfo,
	DelayRestrictionFlag,
	DSCH-RNTI,
	E-RNTI,
	EstablishmentCause,
	FailureCauseWithProtErr,
	FailureCauseWithProtErrTrId,
	GroupReleaseInformation,
	H-RNTI,
	UESpecificBehaviourInformation1idle,
	UESpecificBehaviourInformation1interRAT,
	InitialUE-Identity,
	IntegrityProtActivationInfo,
	IntegrityProtectionModeInfo,
	N-308,
	PagingCause,
	PagingRecordList,
	PagingRecord2List-r5,
	ProtocolErrorIndicator,
	ProtocolErrorIndicatorWithMoreInfo,
	RadioFrequencyBandTDDList,
	Rb-timer-indicator,
	RedirectionInfo,
	RedirectionInfo-r6,
	RejectionCause,
	ReleaseCause,
	RF-CapabilityComp,
	RRC-StateIndicator,
	RRC-TransactionIdentifier,
	SecurityCapability,
	START-Value,
	STARTList,
	SystemSpecificCapUpdateReq-v590ext,
	U-RNTI,
	U-RNTI-Short,
	UE-CapabilityContainer-IEs,
	UE-RadioAccessCapability,
	UE-RadioAccessCapability-v370ext,
	UE-RadioAccessCapability-v380ext,
	UE-RadioAccessCapability-v3a0ext,
	UE-RadioAccessCapability-v3g0ext,
	UE-RadioAccessCapability-v4b0ext,
	UE-RadioAccessCapability-v590ext,
	UE-RadioAccessCapability-v5c0ext,
	UE-RadioAccessCapability-v650ext,
	UE-RadioAccessCapability-v680ext,
	UE-RadioAccessCapabilityComp,
	UE-RadioAccessCapabilityComp-ext,
	DL-PhysChCapabilityFDD-v380ext,
	UE-ConnTimersAndConstants,
	UE-ConnTimersAndConstants-v3a0ext,
	UE-ConnTimersAndConstants-r5,
	UE-SecurityInformation,
	UE-SecurityInformation2,
	URA-UpdateCause,
	UTRAN-DRX-CycleLengthCoefficient,
	WaitTime,
-- Radio Bearer IEs :
	DefaultConfigIdentity,
	DefaultConfigIdentity-r4,
	DefaultConfigIdentity-r5,
	DefaultConfigMode,
	DL-CounterSynchronisationInfo,
	DL-CounterSynchronisationInfo-r5,
	PDCP-ROHC-TargetMode,
	PredefinedConfigIdentity,
	PredefinedConfigStatusList,
	PredefinedConfigStatusListComp,
	PredefinedConfigSetWithDifferentValueTag,
	RAB-Info,
	RAB-Info-r6,
	RAB-Info-Post,
	RAB-InformationList,
	RAB-InformationList-r6,
	RAB-InformationReconfigList,
	RAB-InformationSetupList,
	RAB-InformationSetupList-r4,
	RAB-InformationSetupList-r5,
	RAB-InformationSetupList-r6-ext,
	RAB-InformationSetupList-r6,
	RB-ActivationTimeInfoList,
	RB-COUNT-C-InformationList,
	RB-COUNT-C-MSB-InformationList,
	RB-IdentityList,
	RB-InformationAffectedList,
	RB-InformationAffectedList-r5,
	RB-InformationAffectedList-r6,
	RB-InformationChangedList-r6,
	RB-InformationReconfigList,
	RB-InformationReconfigList-r4,
	RB-InformationReconfigList-r5,
	RB-InformationReconfigList-r6,
	RB-InformationReleaseList,
	RB-PDCPContextRelocationList,
	SRB-InformationSetupList,
	SRB-InformationSetupList-r5,
	SRB-InformationSetupList-r6,
	SRB-InformationSetupList2,
	SRB-InformationSetupList2-r6,
	UL-CounterSynchronisationInfo,
-- Transport Channel IEs:
	CPCH-SetID,
	DL-AddReconfTransChInfo2List,
	DL-AddReconfTransChInfoList,
	DL-AddReconfTransChInfoList-r4,
	DL-AddReconfTransChInfoList-r5,
	DL-CommonTransChInfo,
	DL-CommonTransChInfo-r4,
	DL-DeletedTransChInfoList,
	DL-DeletedTransChInfoList-r5,
	DRAC-StaticInformationList,
	PowerOffsetInfoShort,
	TFC-Subset,
	TFCS-Identity,
	UL-AddReconfTransChInfoList,
	UL-AddReconfTransChInfoList-r6,
	UL-CommonTransChInfo,
	UL-CommonTransChInfo-r4,
	UL-DeletedTransChInfoList,
	UL-DeletedTransChInfoList-r6,
-- Physical Channel IEs :
	Alpha,
	BEACON-PL-Est,
	CCTrCH-PowerControlInfo,
	CCTrCH-PowerControlInfo-r4,
	CCTrCH-PowerControlInfo-r5,
	ConstantValue,
	ConstantValueTdd,
	CPCH-SetInfo,
	DHS-Sync,
	DL-CommonInformation,
	DL-CommonInformation-r4,
	DL-CommonInformation-r5,
	DL-CommonInformation-r6,
	DL-CommonInformationPost,
	DL-HSPDSCH-Information,
	DL-HSPDSCH-Information-r6,
	DL-InformationPerRL-List,
	DL-InformationPerRL-List-r4,
	DL-InformationPerRL-List-r5,
	DL-InformationPerRL-List-r5bis,
	DL-InformationPerRL-List-r6,
	DL-InformationPerRL-ListPostFDD,
	DL-InformationPerRL-PostTDD,
	DL-InformationPerRL-PostTDD-LCR-r4,
	DL-PDSCH-Information,
	DL-TPC-PowerOffsetPerRL-List,
	DPC-Mode,
	DPCH-CompressedModeStatusInfo,
	DynamicPersistenceLevel,
	E-DCH-ReconfigurationInfo,
	FrequencyInfo,
	FrequencyInfoFDD,
	FrequencyInfoTDD,
	HARQ-Preamble-Mode,
	HS-SICH-Power-Control-Info-TDD384,
	MaxAllowedUL-TX-Power,
	OpenLoopPowerControl-IPDL-TDD-r4,
	PDSCH-CapacityAllocationInfo,
	PDSCH-CapacityAllocationInfo-r4,
	PDSCH-Identity,
	PrimaryCPICH-Info,
	PrimaryCCPCH-TX-Power,
	PUSCH-CapacityAllocationInfo,
	PUSCH-CapacityAllocationInfo-r4,
	PUSCH-Identity,
	PUSCH-SysInfoList-HCR-r5,
	PDSCH-SysInfoList-HCR-r5,
	RL-AdditionInformationList,
	RL-AdditionInformationList-r6,
	RL-RemovalInformationList,
	Serving-HSDSCH-CellInformation,
	SpecialBurstScheduling,
	SSDT-Information,
	SSDT-Information-r4,
	TFC-ControlDuration,
	SSDT-UL,
	TimingMaintainedSynchInd,
	TimeslotList,
	TimeslotList-r4,
	TX-DiversityMode,
	UL-ChannelRequirement,
	UL-ChannelRequirement-r4,
	UL-ChannelRequirement-r5,
	UL-ChannelRequirementWithCPCH-SetID,
	UL-ChannelRequirementWithCPCH-SetID-r4,
	UL-ChannelRequirementWithCPCH-SetID-r5,
	UL-DPCH-Info,
	UL-DPCH-Info-r4,
	UL-DPCH-Info-r5,
	UL-DPCH-Info-r6,
	UL-DPCH-InfoPostFDD,
	UL-DPCH-InfoPostTDD,
	UL-DPCH-InfoPostTDD-LCR-r4,
	UL-EDCH-Information-r6,
	UL-SynchronisationParameters-r4,
	UL-TimingAdvance,
	UL-TimingAdvanceControl,
	UL-TimingAdvanceControl-r4,
-- Measurement IEs :
	AdditionalMeasurementID-List,
	DeltaRSCP,
	Frequency-Band,
	EventResults,
	Inter-FreqEventCriteriaList-v590ext,
	Intra-FreqEventCriteriaList-v590ext,
	IntraFreqReportingCriteria-1b-r5,
	IntraFreqEvent-1d-r5,
	IntraFreqCellID,
	InterFreqEventResults-LCR-r4-ext,
	InterRATCellInfoIndication,
	InterRAT-TargetCellDescription,
	MeasuredResults,
	MeasuredResults-v390ext,
	MeasuredResults-v590ext,
	MeasuredResultsList,
	MeasuredResultsList-LCR-r4-ext,
	MeasuredResultsOnRACH,
	MeasuredResultsOnRACHinterFreq,
	MeasurementCommand,
	MeasurementCommand-r4,
	MeasurementIdentity,
	MeasurementReportingMode,
	PrimaryCCPCH-RSCP,
	SFN-Offset-Validity,
	TimeslotListWithISCP,
	TrafficVolumeMeasuredResultsList,
	UE-Positioning-GPS-AssistanceData,
	UE-Positioning-Measurement-v390ext,
	UE-Positioning-OTDOA-AssistanceData,
	UE-Positioning-OTDOA-AssistanceData-r4ext,
	UE-Positioning-OTDOA-AssistanceData-UEB,
-- Other IEs :
	BCCH-ModificationInfo,
	CDMA2000-MessageList,
	GSM-TargetCellInfoList,
	GERANIu-MessageList,
	GERAN-SystemInformation,
	GSM-MessageList,
	GSMSecurityCapability-v6xyext,
	InterRAT-ChangeFailureCause,
	InterRAT-HO-FailureCause,
	InterRAT-UE-RadioAccessCapabilityList,
	InterRAT-UE-RadioAccessCapability-v590ext,
	InterRAT-UE-SecurityCapList,
	IntraDomainNasNodeSelector,
	ProtocolErrorMoreInformation,
	Rplmn-Information,
	Rplmn-Information-r4,
	SegCount,
	SegmentIndex,
	SFN-Prime,
	SIB-Data-fixed,
	SIB-Data-variable,
	SIB-Type,
-- MBMS IEs:
	MBMS-CellGroupIdentity-r6,
	MBMS-CommonRBInformationList-r6,
	MBMS-CurrentCell-SCCPCHList-r6,
	MBMS-JoinedInformation-r6,
	MBMS-MICHConfigurationInfo-r6,
	MBMS-ModifedServiceList-r6,
	MBMS-MSCH-ConfigurationInfo-r6,
	MBMS-NeighbouringCellSCCPCHList-r6,
	MBMS-NumberOfNeighbourCells-r6,
	MBMS-PhyChInformationList-r6,
	MBMS-PL-ServiceRestrictInfo-r6,
	MBMS-PreferredFreqRequest-r6,
	MBMS-PreferredFrequencyList-r6,
	MBMS-PTMActivationTime-r6,
	MBMS-ServiceAccessInfoList-r6,
	MBMS-ServiceIdentity-r6,
	MBMS-ServiceSchedulingInfoList-r6,
	MBMS-SIBType5-SCCPCHList-r6,
	MBMS-TimersAndCounters-r6,
	MBMS-TranspChInfoForEachCCTrCh-r6,
	MBMS-TranspChInfoForEachTrCh-r6,
	MBMS-UnmodifiedServiceList-r6
FROM InformationElements

	maxSIBperMsg,
	maxURNTI-Group
FROM Constant-definitions;

-- ***************************************************
--
-- ACTIVE SET UPDATE (FDD only)
--
-- ***************************************************

ActiveSetUpdate ::= CHOICE {
	r3								SEQUENCE {
		activeSetUpdate-r3				ActiveSetUpdate-r3-IEs,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			activeSetUpdate-r3-add-ext		BIT STRING		OPTIONAL,
			v4b0NonCriticalExtensions		SEQUENCE {
				activeSetUpdate-v4b0ext		ActiveSetUpdate-v4b0ext-IEs,
				v590NonCriticalExtensions		SEQUENCE {
					activeSetUpdate-v590ext			ActiveSetUpdate-v590ext-IEs,
					v6xyNonCriticalExtensions		SEQUENCE {
						activeSetUpdate-v6xyext			ActiveSetUpdate-v6xyext-IEs,
						nonCriticalExtensions			SEQUENCE {} OPTIONAL
					}	OPTIONAL
				}	OPTIONAL
			} OPTIONAL
		} OPTIONAL
	},
	later-than-r3					SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				CHOICE {
			r6								SEQUENCE {
				activeSetUpdate-r6				ActiveSetUpdate-r6-IEs,
				activeSetUpdate-r6-add-ext		BIT STRING		OPTIONAL,
				nonCriticalExtensions			SEQUENCE {}		OPTIONAL
			},
			criticalExtensions				SEQUENCE {}
		}
	}
}

ActiveSetUpdate-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		-- dummy and dummy2 are not used in this version of the specification, they should
		-- not be sent and if received they should be ignored.
		dummy						IntegrityProtectionModeInfo			OPTIONAL,
		dummy2						CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		newU-RNTI						U-RNTI								OPTIONAL,
	-- Core network IEs
		cn-InformationInfo				CN-InformationInfo					OPTIONAL,
	-- Radio bearer IEs
		-- dummy3 is not used in this version of the specification, it should
		-- not be sent and if received it should be ignored.
		dummy3						DL-CounterSynchronisationInfo		OPTIONAL,
	-- Physical channel IEs
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		rl-AdditionInformationList		RL-AdditionInformationList			OPTIONAL,
		rl-RemovalInformationList		RL-RemovalInformationList			OPTIONAL,
		tx-DiversityMode				TX-DiversityMode					OPTIONAL,
		-- dummy4 is not used in this version of the specification, it should
		-- not be sent and if received it should be ignored.
		dummy4							SSDT-Information					OPTIONAL
}

ActiveSetUpdate-v4b0ext-IEs ::= SEQUENCE {
	-- Physical channel IEs
		-- dummy is not used in this version of the specification, it should
		-- not be sent and if received it should be ignored.
		dummy								SSDT-UL								OPTIONAL,
		-- The order of the RLs in IE cell-id-PerRL-List is the same as
		-- in IE RL-AdditionInformationList included in this message
		cell-id-PerRL-List					CellIdentity-PerRL-List				OPTIONAL
}

ActiveSetUpdate-v590ext-IEs ::= SEQUENCE {
	-- Physical channel IEs
		dpc-Mode							DPC-Mode,
		dl-TPC-PowerOffsetPerRL-List		DL-TPC-PowerOffsetPerRL-List			OPTIONAL
}

ActiveSetUpdate-v6xyext-IEs ::= SEQUENCE {
	-- Core network IEs
		primary-plmn-Identity				PLMN-Identity						OPTIONAL
}

ActiveSetUpdate-r6-IEs ::= SEQUENCE {
	-- User equipment IEs
		activationTime						ActivationTime						OPTIONAL,
		newU-RNTI							U-RNTI								OPTIONAL,
		newH-RNTI							H-RNTI								OPTIONAL,
		newPrimary-E-RNTI					E-RNTI								OPTIONAL,
		newSecondary-E-RNTI					E-RNTI								OPTIONAL,
	-- Core network IEs
		cn-InformationInfo					CN-InformationInfo-r6				OPTIONAL,
	-- Physical channel IEs
		maxAllowedUL-TX-Power				MaxAllowedUL-TX-Power				OPTIONAL,
		rl-AdditionInformationList			RL-AdditionInformationList-r6		OPTIONAL,
		rl-RemovalInformationList			RL-RemovalInformationList			OPTIONAL,
		tx-DiversityMode					TX-DiversityMode					OPTIONAL,
		dpc-Mode							DPC-Mode							OPTIONAL,
		serving-HSDSCH-CellInformation		Serving-HSDSCH-CellInformation		OPTIONAL,
		e-dch-ReconfigurationInfo			E-DCH-ReconfigurationInfo			OPTIONAL
}

-- ***************************************************
--
-- ACTIVE SET UPDATE COMPLETE (FDD only)
--
-- ***************************************************

ActiveSetUpdateComplete ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		-- dummy is not used in this version of the specification, it should
		-- not be sent and if received it should be ignored.
		dummy						IntegrityProtActivationInfo			OPTIONAL,
	-- Radio bearer IEs
		-- dummy2 and dummy3 are not used in this version of the specification, they should
		-- not be sent and if received they should be ignored.
		dummy2						RB-ActivationTimeInfoList			OPTIONAL,
		dummy3						UL-CounterSynchronisationInfo		OPTIONAL,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			activeSetUpdateComplete-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}	OPTIONAL
		}	OPTIONAL
}

-- ***************************************************
--
-- ACTIVE SET UPDATE FAILURE (FDD only)
--
-- ***************************************************

ActiveSetUpdateFailure ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		failureCause					FailureCauseWithProtErr,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			activeSetUpdateFailure-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}	OPTIONAL
	}	OPTIONAL
}

-- ***************************************************
--
-- Assistance Data Delivery
--
-- ***************************************************

AssistanceDataDelivery ::= CHOICE {
	r3								SEQUENCE {
		assistanceDataDelivery-r3		AssistanceDataDelivery-r3-IEs,
		v3a0NonCriticalExtensions		SEQUENCE {
			assistanceDataDelivery-v3a0ext	AssistanceDataDelivery-v3a0ext,
			laterNonCriticalExtensions		SEQUENCE {
				-- Container for additional R99 extensions
				assistanceDataDelivery-r3-add-ext		BIT STRING		OPTIONAL,
				v4b0NonCriticalExtensions		SEQUENCE { 
					assistanceDataDelivery-v4b0ext
													AssistanceDataDelivery-v4b0ext-IEs,
					nonCriticalExtensions			SEQUENCE {}						OPTIONAL
				}	OPTIONAL
			}	OPTIONAL
		}	OPTIONAL
	},
	later-than-r3					SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				SEQUENCE {}
	}
}

AssistanceDataDelivery-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
	rrc-TransactionIdentifier		RRC-TransactionIdentifier,
	-- Measurement Information Elements
	ue-positioning-GPS-AssistanceData			UE-Positioning-GPS-AssistanceData				OPTIONAL,
	ue-positioning-OTDOA-AssistanceData-UEB		UE-Positioning-OTDOA-AssistanceData-UEB			OPTIONAL
}

AssistanceDataDelivery-v3a0ext ::= SEQUENCE {
	sfn-Offset-Validity					SFN-Offset-Validity		OPTIONAL
}

AssistanceDataDelivery-v4b0ext-IEs ::= SEQUENCE {
	ue-Positioning-OTDOA-AssistanceData-r4ext	UE-Positioning-OTDOA-AssistanceData-r4ext	OPTIONAL
}

 -- ***************************************************
--
-- CELL CHANGE ORDER FROM UTRAN
--
-- ***************************************************

CellChangeOrderFromUTRAN ::= CHOICE {
	r3								SEQUENCE {
		cellChangeOrderFromUTRAN-IEs		CellChangeOrderFromUTRAN-r3-IEs,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			cellChangeOrderFromUTRAN-r3-add-ext		BIT STRING		OPTIONAL,
			v590NonCriticalExtensions			SEQUENCE {
				cellChangeOrderFromUTRAN-v590ext	CellChangeOrderFromUTRAN-v590ext-IEs,
				nonCriticalExtensions			SEQUENCE {}	OPTIONAL
			}	OPTIONAL
		}	OPTIONAL
	},
	later-than-r3					SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				SEQUENCE {}
	}
}

CellChangeOrderFromUTRAN-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		-- dummy is not used in this version of the specification, it should
		-- not be sent and if received it should be ignored.
		dummy							IntegrityProtectionModeInfo			OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		-- the IE rab-InformationList is not used in this version of the specification, it should
		-- not be sent and if received it should be ignored. The IE may be used in a later
		-- version of the protocol and hence it is not changed into a dummy
		rab-InformationList				RAB-InformationList					OPTIONAL,
		interRAT-TargetCellDescription	InterRAT-TargetCellDescription
}

CellChangeOrderFromUTRAN-v590ext-IEs ::= SEQUENCE {		
		geran-SystemInfoType				CHOICE	{		
			sI									GERAN-SystemInformation,
			pSI									GERAN-SystemInformation
		}		OPTIONAL
}

-- ***************************************************
--
-- CELL CHANGE ORDER FROM UTRAN FAILURE
--
-- ***************************************************

CellChangeOrderFromUTRANFailure ::= CHOICE {
	r3								SEQUENCE {
		cellChangeOrderFromUTRANFailure-r3
										CellChangeOrderFromUTRANFailure-r3-IEs,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			cellChangeOrderFromUTRANFailure-r3-add-ext		BIT STRING	OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}	OPTIONAL
		}	OPTIONAL
	},
	-- dummy is not used in this version of the specification and it
	-- should be ignored.
	dummy							SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				SEQUENCE {}
	}
}

CellChangeOrderFromUTRANFailure-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		-- dummy is not used in this version of the specification, it should
		-- not be sent and if received it should be ignored.
		dummy							IntegrityProtectionModeInfo			OPTIONAL,
		interRAT-ChangeFailureCause		InterRAT-ChangeFailureCause
}

-- ***************************************************
--
-- CELL UPDATE
--
-- ***************************************************

CellUpdate ::= SEQUENCE {
	-- User equipment IEs
		u-RNTI							U-RNTI,
		startList		STARTList,
		am-RLC-ErrorIndicationRb2-3or4		BOOLEAN,
		am-RLC-ErrorIndicationRb5orAbove	BOOLEAN,
		cellUpdateCause					CellUpdateCause,
		-- TABULAR: RRC transaction identifier is nested in FailureCauseWithProtErrTrId
		failureCause					FailureCauseWithProtErrTrId			OPTIONAL,
		rb-timer-indicator				Rb-timer-indicator,
	-- Measurement IEs
		measuredResultsOnRACH			MeasuredResultsOnRACH				OPTIONAL,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			cellUpdate-r3-add-ext			BIT STRING	OPTIONAL,
			v590NonCriticalExtensions	SEQUENCE {
				cellUpdate-v590ext	CellUpdate-v590ext, 
				v6xyNonCriticalExtensions		SEQUENCE {
					cellUpdate-v6xyext				CellUpdate-v6xyext-IEs,
					nonCriticalExtensions			SEQUENCE {}	OPTIONAL
				}		OPTIONAL
			}		OPTIONAL
		}	OPTIONAL
}

CellUpdate-v590ext ::= SEQUENCE {
	establishmentCause				EstablishmentCause	OPTIONAL
}

CellUpdate-v6xyext-IEs ::=			SEQUENCE {
	-- User equipment IEs
		cellUpdateCause-ext				CellUpdateCause-ext					OPTIONAL,
		trafficVolumeIndicator			ENUMERATED { true }					OPTIONAL,
	-- Measurement IEs
		measuredResultsOnRACHinterFreq	MeasuredResultsOnRACHinterFreq		OPTIONAL,
		reconfigurationStatusIndicator	ENUMERATED { true }					OPTIONAL
}

-- ***************************************************
--
-- CELL UPDATE CONFIRM
--
-- ***************************************************

CellUpdateConfirm ::= CHOICE {
	r3								SEQUENCE {
		cellUpdateConfirm-r3			CellUpdateConfirm-r3-IEs,
		v3a0NonCriticalExtensions		SEQUENCE {
			cellUpdateConfirm-v3a0ext		CellUpdateConfirm-v3a0ext,
			laterNonCriticalExtensions		SEQUENCE {
				-- Container for additional R99 extensions
				cellUpdateConfirm-r3-add-ext	BIT STRING	OPTIONAL,
				v4b0NonCriticalExtensions		SEQUENCE {
					cellUpdateConfirm-v4b0ext		CellUpdateConfirm-v4b0ext-IEs,
					v590NonCriticalExtenstions		SEQUENCE {
						cellUpdateConfirm-v590ext		CellUpdateConfirm-v590ext-IEs,
						v5d0NonCriticalExtenstions		SEQUENCE {
							cellUpdateConfirm-v5d0ext		CellUpdateConfirm-v5d0ext-IEs,
							v6xyNonCriticalExtensions		SEQUENCE {
								cellUpdateConfirm-v6xyext		CellUpdateConfirm-v6xyext-IEs,
								nonCriticalExtensions			SEQUENCE {} OPTIONAL
							}		OPTIONAL
						}		OPTIONAL
					}		OPTIONAL
				}		OPTIONAL
			}		OPTIONAL
		}		OPTIONAL
	},
	later-than-r3					SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				CHOICE {
			r4								SEQUENCE {
				cellUpdateConfirm-r4			CellUpdateConfirm-r4-IEs,
				v4d0NonCriticalExtensions		SEQUENCE {
					-- Container for adding non critical extensions after freezing REL-5
					cellUpdateConfirm-r4-add-ext	BIT STRING		OPTIONAL,
					v590NonCriticalExtenstions		SEQUENCE {
						cellUpdateConfirm-v590ext		CellUpdateConfirm-v590ext-IEs,
						v5d0NonCriticalExtenstions		SEQUENCE {
							cellUpdateConfirm-v5d0ext		CellUpdateConfirm-v5d0ext-IEs,
							v6xyNonCriticalExtensions		SEQUENCE {
								cellUpdateConfirm-v6xyext		CellUpdateConfirm-v6xyext-IEs,
								nonCriticalExtensions			SEQUENCE {}		OPTIONAL
							}	OPTIONAL
						}	OPTIONAL
					}	OPTIONAL
				}	OPTIONAL
			},
			criticalExtensions				CHOICE {
				r5								SEQUENCE {
					cellUpdateConfirm-r5			CellUpdateConfirm-r5-IEs,
					-- Container for adding non critical extensions after freezing REL-6
					cellUpdateConfirm-r5-add-ext	BIT STRING		OPTIONAL,
					v5d0NonCriticalExtenstions		SEQUENCE {
						cellUpdateConfirm-v5d0ext		CellUpdateConfirm-v5d0ext-IEs,
						v6xyNonCriticalExtensions		SEQUENCE {
							cellUpdateConfirm-v6xyext		CellUpdateConfirm-v6xyext-IEs,
							nonCriticalExtensions			SEQUENCE {}		OPTIONAL
						}	OPTIONAL
					}	OPTIONAL
				},
				criticalExtensions				CHOICE {
					r6								SEQUENCE {
						cellUpdateConfirm-r6			CellUpdateConfirm-r6-IEs,
						-- Container for adding non critical extensions after freezing REL-7
						cellUpdateConfirm-r6-add-ext	BIT STRING		OPTIONAL,
						nonCriticalExtensions			SEQUENCE {}		OPTIONAL
					},
					criticalExtensions				SEQUENCE {}
				}
			}
		}
	}
}

CellUpdateConfirm-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
		rlc-Re-establishIndicatorRb2-3or4		BOOLEAN,
		rlc-Re-establishIndicatorRb5orAbove		BOOLEAN,
	-- CN information elements
		cn-InformationInfo				CN-InformationInfo					OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Radio bearer IEs
		rb-InformationReleaseList		RB-InformationReleaseList			OPTIONAL,
		rb-InformationReconfigList		RB-InformationReconfigList			OPTIONAL,
		rb-InformationAffectedList		RB-InformationAffectedList			OPTIONAL,
		dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo		OPTIONAL,
	-- Transport channel IEs
		ul-CommonTransChInfo			UL-CommonTransChInfo				OPTIONAL,
		ul-deletedTransChInfoList		UL-DeletedTransChInfoList			OPTIONAL,
		ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList			OPTIONAL,
		modeSpecificTransChInfo			CHOICE {
			fdd								SEQUENCE {
				-- dummy and dummy2 are not used in this version of the specification, they should
				-- not be sent and if received they should be ignored.
				dummy							CPCH-SetID					OPTIONAL,
				dummy2							DRAC-StaticInformationList	OPTIONAL
			},
			tdd								NULL
		},
		dl-CommonTransChInfo			DL-CommonTransChInfo				OPTIONAL,
		dl-DeletedTransChInfoList		DL-DeletedTransChInfoList			OPTIONAL,
		dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList			OPTIONAL,
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-ChannelRequirement			UL-ChannelRequirement				OPTIONAL,
		modeSpecificPhysChInfo			CHOICE {
			fdd								SEQUENCE {
				-- dummy is not used in this version of specification, it should
				-- not be sent and if received it should be ignored.
				dummy							DL-PDSCH-Information		OPTIONAL
			},
			tdd								NULL
		},
		dl-CommonInformation			DL-CommonInformation				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List			OPTIONAL
}

CellUpdateConfirm-v3a0ext ::= SEQUENCE {
	-- The IE new-DSCH-RNTI should not be included in FDD mode, and if received the UE behaviour
	-- is unspecified
	new-DSCH-RNTI				DSCH-RNTI								OPTIONAL
}

CellUpdateConfirm-v4b0ext-IEs ::= SEQUENCE {
	-- Physical channel IEs
		-- dummy is not used in this version of the specification, it should
		-- not be sent and if received it should be ignored.
		dummy								SSDT-UL								OPTIONAL,
		-- The order of the RLs in IE cell-id-PerRL-List is the same as
		-- in IE DL-InformationPerRL-List included in this message
		cell-id-PerRL-List					CellIdentity-PerRL-List				OPTIONAL
}

CellUpdateConfirm-v590ext-IEs ::= SEQUENCE {
	-- Physical channel IEs
		dl-TPC-PowerOffsetPerRL-List	DL-TPC-PowerOffsetPerRL-List		OPTIONAL
}

CellUpdateConfirm-v5d0ext-IEs ::=	SEQUENCE {
	--Radio Bearer IEs
		pdcp-ROHC-TargetMode			PDCP-ROHC-TargetMode				OPTIONAL
}
CellUpdateConfirm-r4-IEs ::= SEQUENCE {
	-- User equipment IEs
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		-- The IE new-DSCH-RNTI should not be included in FDD mode, and if received
		-- the UE behaviour is unspecified
		new-DSCH-RNTI					DSCH-RNTI							OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
		rlc-Re-establishIndicatorRb2-3or4		BOOLEAN,
		rlc-Re-establishIndicatorRb5orAbove	BOOLEAN,
	-- CN information elements
		cn-InformationInfo				CN-InformationInfo					OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Radio bearer IEs
		rb-InformationReleaseList		RB-InformationReleaseList			OPTIONAL,
		rb-InformationReconfigList		RB-InformationReconfigList-r4		OPTIONAL,
		rb-InformationAffectedList		RB-InformationAffectedList			OPTIONAL,
		dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo		OPTIONAL,
	-- Transport channel IEs
		ul-CommonTransChInfo			UL-CommonTransChInfo-r4				OPTIONAL,
		ul-deletedTransChInfoList		UL-DeletedTransChInfoList			OPTIONAL,
		ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList			OPTIONAL,
		modeSpecificTransChInfo			CHOICE {
			fdd								SEQUENCE {
				-- dummy and dummy2 are not used in this version of the specification, they should
				-- not be sent and if received they should be ignored.
				dummy							CPCH-SetID					OPTIONAL,
				dummy2							DRAC-StaticInformationList	OPTIONAL
			},
			tdd								NULL
		},
		dl-CommonTransChInfo			DL-CommonTransChInfo-r4				OPTIONAL,
		dl-DeletedTransChInfoList		DL-DeletedTransChInfoList			OPTIONAL,
		dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList-r4		OPTIONAL,
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-ChannelRequirement			UL-ChannelRequirement-r4			OPTIONAL,
		modeSpecificPhysChInfo			CHOICE {
			fdd								SEQUENCE {
				-- dummy is not used in this version of specification, it should
				-- not be sent and if received it should be ignored.
				dummy							DL-PDSCH-Information		OPTIONAL
			},
			tdd								NULL
		},
		dl-CommonInformation			DL-CommonInformation-r4				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List-r4			OPTIONAL
}

CellUpdateConfirm-r5-IEs ::= SEQUENCE {
	-- User equipment IEs
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		-- The IE new-DSCH-RNTI should not be included in FDD mode, and if received
		-- the UE behaviour is unspecified
		new-DSCH-RNTI					DSCH-RNTI							OPTIONAL,
		new-H-RNTI						H-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
		rlc-Re-establishIndicatorRb2-3or4		BOOLEAN,
		rlc-Re-establishIndicatorRb5orAbove	BOOLEAN,
	-- CN information elements
		cn-InformationInfo				CN-InformationInfo					OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Radio bearer IEs
		rb-InformationReleaseList		RB-InformationReleaseList			OPTIONAL,
		rb-InformationReconfigList		RB-InformationReconfigList-r5		OPTIONAL,
		rb-InformationAffectedList		RB-InformationAffectedList-r5		OPTIONAL,
		dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo-r5	OPTIONAL,
	-- Transport channel IEs
		ul-CommonTransChInfo			UL-CommonTransChInfo-r4				OPTIONAL,
		ul-deletedTransChInfoList		UL-DeletedTransChInfoList			OPTIONAL,
		ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList			OPTIONAL,
		modeSpecificTransChInfo			CHOICE {
			fdd								SEQUENCE {
				-- dummy and dummy2 are not used in this version of the specification, they should
				-- not be sent and if received they should be ignored.
				dummy							CPCH-SetID					OPTIONAL,
				dummy2							DRAC-StaticInformationList	OPTIONAL
			},
			tdd								NULL
		},
		dl-CommonTransChInfo			DL-CommonTransChInfo-r4				OPTIONAL,
		dl-DeletedTransChInfoList		DL-DeletedTransChInfoList-r5		OPTIONAL,
		dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList-r5		OPTIONAL,
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-ChannelRequirement			UL-ChannelRequirement-r5			OPTIONAL,
		modeSpecificPhysChInfo			CHOICE {
			fdd								SEQUENCE {
				-- dummy is not used in this version of specification, it should
				-- not be sent and if received it should be ignored.
				dummy							DL-PDSCH-Information		OPTIONAL
			},
			tdd								NULL
		},
		dl-HSPDSCH-Information			DL-HSPDSCH-Information				OPTIONAL,
		dl-CommonInformation			DL-CommonInformation-r5				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List-r5			OPTIONAL
}

CellUpdateConfirm-r6-IEs ::= SEQUENCE {
	-- User equipment IEs
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		-- The IE new-DSCH-RNTI should not be included in FDD mode,
		-- and if received the UE behaviour is unspecified
		new-DSCH-RNTI					DSCH-RNTI							OPTIONAL,
		new-H-RNTI						H-RNTI								OPTIONAL,
		newPrimary-E-RNTI				E-RNTI								OPTIONAL,
		newSecondary-E-RNTI				E-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
		rlc-Re-establishIndicatorRb2-3or4		BOOLEAN,
		rlc-Re-establishIndicatorRb5orAbove		BOOLEAN,
	-- CN information elements
		cn-InformationInfo				CN-InformationInfo-r6				OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Radio bearer IEs
		rb-InformationReleaseList		RB-InformationReleaseList			OPTIONAL,
		rb-InformationReconfigList		RB-InformationReconfigList-r6		OPTIONAL,
		rb-InformationAffectedList		RB-InformationAffectedList-r6		OPTIONAL,
		dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo-r5	OPTIONAL,
		pdcp-ROHC-TargetMode			PDCP-ROHC-TargetMode				OPTIONAL,
	-- Transport channel IEs
		ul-CommonTransChInfo			UL-CommonTransChInfo-r4				OPTIONAL,
		ul-deletedTransChInfoList		UL-DeletedTransChInfoList-r6		OPTIONAL,
		ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList-r6		OPTIONAL,
		dl-CommonTransChInfo			DL-CommonTransChInfo-r4				OPTIONAL,
		dl-DeletedTransChInfoList		DL-DeletedTransChInfoList-r5		OPTIONAL,
		dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList-r5		OPTIONAL,
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-DPCH-Info					UL-DPCH-Info-r6						OPTIONAL,
		ul-EDCH-Information				UL-EDCH-Information-r6				OPTIONAL,
		dl-HSPDSCH-Information			DL-HSPDSCH-Information-r6			OPTIONAL,
		dl-CommonInformation			DL-CommonInformation-r6				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List-r6			OPTIONAL,
	-- MBMS IEs
		mbms-PL-ServiceRestrictInfo		MBMS-PL-ServiceRestrictInfo-r6		OPTIONAL
}

CellUpdateConfirm-v6xyext-IEs ::=	SEQUENCE {
	-- Core network IEs
		primary-plmn-Identity			PLMN-Identity						OPTIONAL,
	-- Physical channel IEs
		-- The IE harq-Preamble-Mode should not be used in the r3 and r4 versions of the message
		-- If included in the r3 or r4 version of the message, the UE should ignore the IE
		harq-Preamble-Mode				HARQ-Preamble-Mode					OPTIONAL,
		beaconPLEst						BEACON-PL-Est						OPTIONAL,
		postVerificationPeriod			ENUMERATED { true }					OPTIONAL,
		dhs-sync						DHS-Sync							OPTIONAL,
	-- MBMS IEs
		mbms-PL-ServiceRestrictInfo		MBMS-PL-ServiceRestrictInfo-r6		OPTIONAL
}

-- ***************************************************
--
-- CELL UPDATE CONFIRM for CCCH
--
-- ***************************************************

CellUpdateConfirm-CCCH ::= CHOICE {
	r3								SEQUENCE {
		-- User equipment IEs
			u-RNTI						U-RNTI,
		-- The rest of the message is identical to the one sent on DCCH.
			cellUpdateConfirm-r3				CellUpdateConfirm-r3-IEs,
			laterNonCriticalExtensions		SEQUENCE {
				-- Container for additional R99 extensions
				cellUpdateConfirm-CCCH-r3-add-ext			BIT STRING	OPTIONAL,
				v4b0NonCriticalExtensions		SEQUENCE {
					cellUpdateConfirm-v4b0ext		CellUpdateConfirm-v4b0ext-IEs,
					v590NonCriticalExtensions		SEQUENCE {
						cellUpdateConfirm-v590ext		CellUpdateConfirm-v590ext-IEs,
						v5d0NonCriticalExtenstions		SEQUENCE {
							cellUpdateConfirm-v5d0ext		CellUpdateConfirm-v5d0ext-IEs,
							v6xyNonCriticalExtensions		SEQUENCE {
								cellUpdateConfirm-v6xyext		CellUpdateConfirm-v6xyext-IEs,
								nonCriticalExtensions			SEQUENCE {} OPTIONAL
							}	OPTIONAL
						}	OPTIONAL
					}	OPTIONAL
				}	OPTIONAL
			}	OPTIONAL
	},
	later-than-r3					SEQUENCE {
		u-RNTI							U-RNTI,
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				CHOICE {
			r4								SEQUENCE {
				-- The rest of the message is identical to the one sent on DCCH.
				cellUpdateConfirm-r4			CellUpdateConfirm-r4-IEs,
				v4d0NonCriticalExtensions			SEQUENCE {
					-- Container for adding non critical extensions after freezing REL-5
					cellUpdateConfirm-CCCH-r4-add-ext		BIT STRING		OPTIONAL,
					v590NonCriticalExtensions		SEQUENCE {
						cellUpdateConfirm-v590ext		CellUpdateConfirm-v590ext-IEs,
						v5d0NonCriticalExtenstions		SEQUENCE {
							cellUpdateConfirm-v5d0ext		CellUpdateConfirm-v5d0ext-IEs,
							v6xyNonCriticalExtensions		SEQUENCE {
								cellUpdateConfirm-v6xyext		CellUpdateConfirm-v6xyext-IEs,
								nonCriticalExtensions			SEQUENCE {}		OPTIONAL
							}	OPTIONAL
						}	OPTIONAL
					}	OPTIONAL
				}	OPTIONAL
			},
			criticalExtensions				CHOICE {
				r5								SEQUENCE {
					cellUpdateConfirm-r5			CellUpdateConfirm-r5-IEs,
					cellUpdateConfirm-CCCH-r5-add-ext		BIT STRING		OPTIONAL,
					v5d0NonCriticalExtenstions		SEQUENCE {
						cellUpdateConfirm-v5d0ext		CellUpdateConfirm-v5d0ext-IEs,
						v6xyNonCriticalExtensions		SEQUENCE {
							cellUpdateConfirm-v6xyext		CellUpdateConfirm-v6xyext-IEs,
							nonCriticalExtensions			SEQUENCE {}		OPTIONAL
						}	OPTIONAL
					}	OPTIONAL
				},		
				criticalExtensions				CHOICE {
					r6								SEQUENCE {
						cellUpdateConfirm-r6			CellUpdateConfirm-r6-IEs,
						cellUpdateConfirm-r6-add-ext	BIT STRING		OPTIONAL,
						nonCriticalExtensions			SEQUENCE {}		OPTIONAL
					},
					criticalExtensions				SEQUENCE {}
				}
			}
		}
	}
}

-- ***************************************************
--
-- COUNTER CHECK
--
-- ***************************************************

CounterCheck ::= CHOICE {
	r3								SEQUENCE {
		counterCheck-r3					CounterCheck-r3-IEs,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			counterCheck-r3-add-ext		BIT STRING	OPTIONAL,
			nonCriticalExtensions		SEQUENCE {}	OPTIONAL
		}	OPTIONAL
	},
	later-than-r3					SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				SEQUENCE {}
	}
}

CounterCheck-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
	-- Radio bearer IEs
		rb-COUNT-C-MSB-InformationList	RB-COUNT-C-MSB-InformationList
}

-- ***************************************************
--
-- COUNTER CHECK RESPONSE
--
-- ***************************************************

CounterCheckResponse ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
	-- Radio bearer IEs
		rb-COUNT-C-InformationList		RB-COUNT-C-InformationList			OPTIONAL,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			counterCheckResponse-r3-add-ext		BIT STRING	OPTIONAL,
			nonCriticalExtensions				SEQUENCE {}	OPTIONAL
		}	OPTIONAL
}

-- ***************************************************
--
-- DOWNLINK DIRECT TRANSFER
--
-- ***************************************************

DownlinkDirectTransfer ::= CHOICE {
	r3								SEQUENCE {
		downlinkDirectTransfer-r3		DownlinkDirectTransfer-r3-IEs,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			downlinkDirectTransfer-r3-add-ext		BIT STRING	OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}	OPTIONAL
		}	OPTIONAL
	},
	later-than-r3					SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				SEQUENCE {}
	}
}

DownlinkDirectTransfer-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
	-- Core network IEs
		cn-DomainIdentity				CN-DomainIdentity,
		nas-Message						NAS-Message
}

-- ***************************************************
--
-- HANDOVER TO UTRAN COMMAND
--
-- ***************************************************


HandoverToUTRANCommand ::= CHOICE {
	r3								SEQUENCE {
		handoverToUTRANCommand-r3		HandoverToUTRANCommand-r3-IEs,
		nonCriticalExtensions			SEQUENCE {} OPTIONAL
	},
	criticalExtensions				CHOICE {
		r4								SEQUENCE {
			handoverToUTRANCommand-r4		HandoverToUTRANCommand-r4-IEs,
			nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		},
		criticalExtensions				CHOICE {
			r5								SEQUENCE {
				handoverToUTRANCommand-r5		HandoverToUTRANCommand-r5-IEs,
				nonCriticalExtensions			SEQUENCE {}		OPTIONAL
			},
			criticalExtensions				CHOICE {
				r6								SEQUENCE {
					handoverToUTRANCommand-r6		HandoverToUTRANCommand-r6-IEs,
					nonCriticalExtensions			SEQUENCE {}		OPTIONAL
				},
				criticalExtensions				SEQUENCE {}
			}
		}
	}
}

HandoverToUTRANCommand-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		new-U-RNTI						U-RNTI-Short,
		-- dummy is not used in this version of specification, it should
		-- not be sent and if received it should be ignored.
		dummy							ActivationTime						OPTIONAL,
		cipheringAlgorithm				CipheringAlgorithm					OPTIONAL,
	-- Radio bearer IEs
	-- Specification mode information
		specificationMode				CHOICE {
			complete						SEQUENCE {
				srb-InformationSetupList		SRB-InformationSetupList,
				rab-InformationSetupList		RAB-InformationSetupList			OPTIONAL,
				ul-CommonTransChInfo			UL-CommonTransChInfo,
				ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList,
				dl-CommonTransChInfo			DL-CommonTransChInfo,
				dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList,
				ul-DPCH-Info					UL-DPCH-Info,
				modeSpecificInfo				CHOICE {
					fdd								SEQUENCE {
						-- dummy and dummy2 are not used in this version of specification,
						-- they should not be sent and if received they should be ignored.
						dummy							DL-PDSCH-Information OPTIONAL,
						dummy2							CPCH-SetInfo		OPTIONAL
					},
					tdd								NULL
				},
				dl-CommonInformation			DL-CommonInformation,
				dl-InformationPerRL-List		DL-InformationPerRL-List,
				frequencyInfo					FrequencyInfo
			},
			preconfiguration				SEQUENCE {
-- All IEs that include an FDD/TDD choice are split in two IEs for this message,
-- one for the FDD only elements and one for the TDD only elements, so that one
-- FDD/TDD choice in this level is sufficient.
				preConfigMode					CHOICE {
					predefinedConfigIdentity		PredefinedConfigIdentity,
					defaultConfig					SEQUENCE {
						defaultConfigMode				DefaultConfigMode,
						defaultConfigIdentity 			DefaultConfigIdentity
					}
				},
				rab-Info						RAB-Info-Post		OPTIONAL,
				modeSpecificInfo				CHOICE {
					fdd								SEQUENCE {
						ul-DPCH-Info					UL-DPCH-InfoPostFDD,
						dl-CommonInformationPost		DL-CommonInformationPost,
						dl-InformationPerRL-List		DL-InformationPerRL-ListPostFDD,
						frequencyInfo					FrequencyInfoFDD
					},
					tdd									SEQUENCE {
						ul-DPCH-Info					UL-DPCH-InfoPostTDD,
						dl-CommonInformationPost		DL-CommonInformationPost,
						dl-InformationPerRL				DL-InformationPerRL-PostTDD,
						frequencyInfo					FrequencyInfoTDD,
						primaryCCPCH-TX-Power			PrimaryCCPCH-TX-Power
					}
				}
			}
		},
	-- Physical channel IEs
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power
}

HandoverToUTRANCommand-r4-IEs ::= SEQUENCE {
	-- User equipment IEs
		new-U-RNTI						U-RNTI-Short,
		cipheringAlgorithm				CipheringAlgorithm					OPTIONAL,
	-- Radio bearer IEs
	-- Specification mode information
		specificationMode				CHOICE {
			complete						SEQUENCE {
				srb-InformationSetupList		SRB-InformationSetupList,
				rab-InformationSetupList		RAB-InformationSetupList-r4			OPTIONAL,
				ul-CommonTransChInfo			UL-CommonTransChInfo-r4,
				ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList,
				dl-CommonTransChInfo			DL-CommonTransChInfo-r4,
				dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList-r4,
				ul-DPCH-Info					UL-DPCH-Info-r4,
				modeSpecificInfo				CHOICE {
					fdd								SEQUENCE {
						-- dummy and dummy2 are not used in this version of specification,
						-- they should not be sent and if received they should be ignored.
						dummy							DL-PDSCH-Information OPTIONAL,
						dummy2							CPCH-SetInfo		OPTIONAL
					},
					tdd								NULL
				},
				dl-CommonInformation			DL-CommonInformation-r4,
				dl-InformationPerRL-List		DL-InformationPerRL-List-r4,
				frequencyInfo					FrequencyInfo
			},
			preconfiguration				SEQUENCE {
-- All IEs that include an FDD/TDD choice are split in two IEs for this message,
-- one for the FDD only elements and one for the TDD only elements, so that one
-- FDD/TDD choice in this level is sufficient.
				preConfigMode					CHOICE {
					predefinedConfigIdentity		PredefinedConfigIdentity,
					defaultConfig					SEQUENCE {
						defaultConfigMode				DefaultConfigMode,
						defaultConfigIdentity 			DefaultConfigIdentity-r4
					}
				},
				rab-Info						RAB-Info-Post		OPTIONAL,
				modeSpecificInfo				CHOICE {
					fdd								SEQUENCE {
						ul-DPCH-Info					UL-DPCH-InfoPostFDD,
						dl-CommonInformationPost		DL-CommonInformationPost,
						dl-InformationPerRL-List		DL-InformationPerRL-ListPostFDD,
						frequencyInfo					FrequencyInfoFDD
					},
					tdd								CHOICE {
						tdd384							SEQUENCE {
							ul-DPCH-Info					UL-DPCH-InfoPostTDD,
							dl-InformationPerRL				DL-InformationPerRL-PostTDD,
							frequencyInfo					FrequencyInfoTDD,
							primaryCCPCH-TX-Power			PrimaryCCPCH-TX-Power
						},
						tdd128							SEQUENCE {
							ul-DPCH-Info					UL-DPCH-InfoPostTDD-LCR-r4,
							dl-InformationPerRL				DL-InformationPerRL-PostTDD-LCR-r4,
							frequencyInfo					FrequencyInfoTDD,
							primaryCCPCH-TX-Power			PrimaryCCPCH-TX-Power
						}
					}
				}
			}
		},
	-- Physical channel IEs
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power
}

HandoverToUTRANCommand-r5-IEs ::= SEQUENCE {
	-- User equipment IEs
		new-U-RNTI						U-RNTI-Short,
		cipheringAlgorithm				CipheringAlgorithm					OPTIONAL,
	-- Radio bearer IEs
	-- Specification mode information
		specificationMode				CHOICE {
			complete						SEQUENCE {
				srb-InformationSetupList		SRB-InformationSetupList-r5,
				rab-InformationSetupList		RAB-InformationSetupList-r5			OPTIONAL,
				ul-CommonTransChInfo			UL-CommonTransChInfo-r4,
				ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList,
				dl-CommonTransChInfo			DL-CommonTransChInfo-r4,
				dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList-r5,
				ul-DPCH-Info					UL-DPCH-Info-r5,
				modeSpecificInfo				CHOICE {
					fdd								SEQUENCE {
						-- dummy and dummy2 are not used in this version of specification,
						-- they should not be sent and if received they should be ignored.
						dummy							DL-PDSCH-Information OPTIONAL,
						dummy2							CPCH-SetInfo		OPTIONAL
					},
					tdd								NULL
				},
				dl-CommonInformation			DL-CommonInformation-r4,
				dl-InformationPerRL-List		DL-InformationPerRL-List-r5,
				frequencyInfo					FrequencyInfo
			},
			preconfiguration				SEQUENCE {
-- All IEs that include an FDD/TDD choice are split in two IEs for this message,
-- one for the FDD only elements and one for the TDD only elements, so that one
-- FDD/TDD choice in this level is sufficient.
				preConfigMode					CHOICE {
					predefinedConfigIdentity		PredefinedConfigIdentity,
					defaultConfig					SEQUENCE {
						defaultConfigMode				DefaultConfigMode,
						defaultConfigIdentity 			DefaultConfigIdentity-r5
					}
				},
				rab-Info						RAB-Info-Post		OPTIONAL,
				modeSpecificInfo				CHOICE {
					fdd								SEQUENCE {
						ul-DPCH-Info					UL-DPCH-InfoPostFDD,
						dl-CommonInformationPost		DL-CommonInformationPost,
						dl-InformationPerRL-List		DL-InformationPerRL-ListPostFDD,
						frequencyInfo					FrequencyInfoFDD
					},
					tdd								CHOICE {
						tdd384							SEQUENCE {
							ul-DPCH-Info					UL-DPCH-InfoPostTDD,
							dl-InformationPerRL				DL-InformationPerRL-PostTDD,
							frequencyInfo					FrequencyInfoTDD,
							primaryCCPCH-TX-Power			PrimaryCCPCH-TX-Power
						},
						tdd128							SEQUENCE {
							ul-DPCH-Info					UL-DPCH-InfoPostTDD-LCR-r4,
							dl-InformationPerRL				DL-InformationPerRL-PostTDD-LCR-r4,
							frequencyInfo					FrequencyInfoTDD,
							primaryCCPCH-TX-Power			PrimaryCCPCH-TX-Power
						}
					}
				}
			}
		},
	-- Physical channel IEs
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power
}

HandoverToUTRANCommand-r6-IEs ::= SEQUENCE {
	-- User equipment IEs
		new-U-RNTI						U-RNTI-Short,
		cipheringAlgorithm				CipheringAlgorithm					OPTIONAL,
	-- Radio bearer IEs
	-- Specification mode information
		specificationMode				CHOICE {
			complete						SEQUENCE {
				srb-InformationSetupList		SRB-InformationSetupList-r6,
				rab-InformationSetupList		RAB-InformationSetupList-r6		OPTIONAL,
				ul-CommonTransChInfo			UL-CommonTransChInfo-r4,
				ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList-r6,
				dl-CommonTransChInfo			DL-CommonTransChInfo-r4,
				dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList-r5,
				ul-DPCH-Info					UL-DPCH-Info-r6,
				dl-CommonInformation			DL-CommonInformation-r4,
				dl-InformationPerRL-List		DL-InformationPerRL-List-r6,
				frequencyInfo					FrequencyInfo
			}
			-- For the 'preconfiguration' specificationMode the r5 message is used.
		},
	-- Physical channel IEs
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power
}

-- ***************************************************
--
-- HANDOVER TO UTRAN COMPLETE
--
-- ***************************************************

HandoverToUTRANComplete ::= SEQUENCE {
	--TABULAR: Integrity protection shall not be performed on this message.
	-- User equipment IEs
	-- TABULAR: startList is conditional on history.
		startList						STARTList							OPTIONAL,
	-- Radio bearer IEs
		count-C-ActivationTime			ActivationTime						OPTIONAL,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			handoverToUTRANComplete-r3-add-ext		BIT STRING	OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		}	OPTIONAL
}

-- ***************************************************
--
-- INITIAL DIRECT TRANSFER
--
-- ***************************************************

InitialDirectTransfer ::= SEQUENCE {
	-- Core network IEs
		cn-DomainIdentity				CN-DomainIdentity,
		intraDomainNasNodeSelector		IntraDomainNasNodeSelector,
		nas-Message						NAS-Message,
	-- Measurement IEs
		measuredResultsOnRACH			MeasuredResultsOnRACH				OPTIONAL,
		v3a0NonCriticalExtensions		SEQUENCE {
		initialDirectTransfer-v3a0ext	InitialDirectTransfer-v3a0ext,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			initialDirectTransfer-r3-add-ext		BIT STRING	OPTIONAL,
				v590NonCriticalExtensions		SEQUENCE {
					initialDirectTransfer-v590ext	InitialDirectTransfer-v590ext,
					v6xyNonCriticalExtensions		SEQUENCE {
						initialDirectTransfer-v6xyext	InitialDirectTransfer-v6xyext-IEs,
						nonCriticalExtensions			SEQUENCE {}		OPTIONAL
					}		OPTIONAL
				}		OPTIONAL
			}		OPTIONAL
		}	OPTIONAL
}

InitialDirectTransfer-v3a0ext ::= SEQUENCE {
	-- start-value shall always be included in this version of the protocol
	start-Value						START-Value							OPTIONAL
}
InitialDirectTransfer-v590ext ::= SEQUENCE {
	establishmentCause		EstablishmentCause	OPTIONAL
}

InitialDirectTransfer-v6xyext-IEs ::= SEQUENCE {
	-- Core network IEs
		plmn-Identity					PLMN-Identity						OPTIONAL,
	-- Measurement IEs
		measuredResultsOnRACHinterFreq	MeasuredResultsOnRACHinterFreq		OPTIONAL,
	-- MBMS IEs
		mbms-JoinedInformation			MBMS-JoinedInformation-r6			OPTIONAL
}

-- ***************************************************
--
-- HANDOVER FROM UTRAN COMMAND
--
-- ***************************************************

HandoverFromUTRANCommand-GSM ::= CHOICE {
	r3								SEQUENCE {
		handoverFromUTRANCommand-GSM-r3
										HandoverFromUTRANCommand-GSM-r3-IEs,
		-- UTRAN should not include the IE laterNonCriticalExtensions when it sets the IE 
		-- gsm-message included in handoverFromUTRANCommand-GSM-r3 to single-GSM-Message. The UE
		-- behaviour upon receiving a message with this combination of IE values is unspecified.
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			handoverFromUTRANCommand-GSM-r3-add-ext		BIT STRING	OPTIONAL,
			-- UTRAN may apply the r3 version of the message to perform PS handover
			-- for a single RAB only
			v6xyNonCriticalExtensions		SEQUENCE {
				handoverFromUTRANCommand-GSM-v6xyext	HandoverFromUTRANCommand-GSM-v6xyext-IEs,
				nonCriticalExtensions			SEQUENCE {}	OPTIONAL
			}	OPTIONAL
		}	OPTIONAL
	},
	later-than-r3					SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				CHOICE {
			r6								SEQUENCE {
				handoverFromUTRANCommand-GSM-r6		HandoverFromUTRANCommand-GSM-r6-IEs,
				handoverFromUTRANCommand-GSM-r6-add-ext		BIT STRING	OPTIONAL,
				nonCriticalExtensions			SEQUENCE {}	OPTIONAL
			},
			criticalExtensions				SEQUENCE {}
		}
	}
}

HandoverFromUTRANCommand-GSM-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		activationTime					ActivationTime						OPTIONAL,
	-- Radio bearer IEs
		toHandoverRAB-Info				RAB-Info							OPTIONAL,
	-- Measurement IEs
		frequency-band					Frequency-Band,
	-- Other IEs
		gsm-message						CHOICE {
			-- In the single-GSM-Message case the following rules apply:
			-- 1> the GSM message directly follows the basic production; the final padding that
			--    results when PER encoding the abstract syntax value is removed prior to appending 
			--    the GSM message.
			-- 2> the RRC message excluding the GSM part, does not contain a length determinant; 
			--    there is no explicit parameter indicating the size of the included GSM message.
			-- 3> depending on need, final padding (all 0s) is added to ensure the final result
			--    comprises a full number of octets
			single-GSM-Message				SEQUENCE {},
			gsm-MessageList					SEQUENCE {
				gsm-Messages					GSM-MessageList
			}
		}
}

HandoverFromUTRANCommand-GSM-r6-IEs ::= SEQUENCE {
	-- User equipment IEs
		activationTime					ActivationTime						OPTIONAL,
	-- Radio bearer IEs
		toHandoverRAB-Info				RAB-InformationList-r6				OPTIONAL,
	-- Measurement IEs
		frequency-band					Frequency-Band,
	-- Other IEs
		gsm-message						CHOICE {
			-- In the single-GSM-Message case the following rules apply:
			-- 1> the GSM message directly follows the basic production; the final padding that
			--    results when PER encoding the abstract syntax value is removed prior to appending 
			--    the GSM message.
			-- 2> the RRC message excluding the GSM part, does not contain a length determinant; 
			--    there is no explicit parameter indicating the size of the included GSM message.
			-- 3> depending on need, final padding (all 0s) is added to ensure the final result
			--    comprises a full number of octets
			single-GSM-Message				SEQUENCE {},
			gsm-MessageList					SEQUENCE {
				gsm-Messages					GSM-MessageList
			}
		},
		geran-SystemInfoType				CHOICE	{		
			sI									GERAN-SystemInformation,
			pSI									GERAN-SystemInformation
		}		OPTIONAL
}

HandoverFromUTRANCommand-GSM-v6xyext-IEs ::= SEQUENCE {
		geran-SystemInfoType				CHOICE	{		
			sI									GERAN-SystemInformation,
			pSI									GERAN-SystemInformation
		}		OPTIONAL
}

HandoverFromUTRANCommand-GERANIu ::= SEQUENCE {
	rrc-TransactionIdentifier		RRC-TransactionIdentifier,
	handoverFromUTRANCommand-GERANIu	CHOICE {
		r5									SEQUENCE {
			handoverFromUTRANCommand-GERANIu-r5
											HandoverFromUTRANCommand-GERANIu-r5-IEs,
			-- UTRAN should not include the IE nonCriticalExtensions when it sets
			-- the IE geranIu-message included in handoverFromUTRANCommand-GERANIu-r5 to 
			-- single-GERANIu-Message
			-- The UE behaviour upon receiving a message including this combination of IE values is
			-- not specified
			nonCriticalExtensions			SEQUENCE {}	OPTIONAL
		},
		later-than-r5					SEQUENCE {
			criticalExtensions				SEQUENCE {}
		}
	}
}

HandoverFromUTRANCommand-GERANIu-r5-IEs ::= SEQUENCE {
	-- User equipment IEs
		activationTime					ActivationTime						OPTIONAL,
	-- Measurement IEs
		frequency-Band					Frequency-Band,
	-- Other IEs
		geranIu-Message						CHOICE {
			-- In the single-GERANIu-Message case the following rules apply:
			-- 1> the GERAN Iu message directly follows the basic production; the final padding that
			--    results when PER encoding the abstract syntax value is removed prior to appending 
			--    the GERAN Iu message.
			-- 2> the RRC message excluding the GERAN Iu part does not contain a length determinant; 
--    there is no explicit parameter indicating the size of the included GERAN Iu
--    message.
			-- 3> depending on need, final padding (all 0s) is added to ensure the final result
			--    comprises a full number of octets.
			single-GERANIu-Message			SEQUENCE {},
			geranIu-MessageList				SEQUENCE {
				geranIu-Messages				GERANIu-MessageList
			}
		}
}

HandoverFromUTRANCommand-CDMA2000 ::= CHOICE {
	r3								SEQUENCE {
		handoverFromUTRANCommand-CDMA2000-r3
										HandoverFromUTRANCommand-CDMA2000-r3-IEs,
		laterNonCriticalExtensions			SEQUENCE {
			-- Container for additional R99 extensions 
			handoverFromUTRANCommand-CDMA2000-r3-add-ext		
												BIT STRING		OPTIONAL,
			nonCriticalExtensions				SEQUENCE {}		OPTIONAL
		}	OPTIONAL
	},
	later-than-r3					SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				SEQUENCE {}
	}
}

HandoverFromUTRANCommand-CDMA2000-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		activationTime					ActivationTime						OPTIONAL,
	-- Radio bearer IEs
		toHandoverRAB-Info				RAB-Info							OPTIONAL,
	-- Other IEs
		cdma2000-MessageList			CDMA2000-MessageList
}

-- ***************************************************
--
-- HANDOVER FROM UTRAN FAILURE
--
-- ***************************************************

HandoverFromUTRANFailure ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
	-- Other IEs
		interRAT-HO-FailureCause		InterRAT-HO-FailureCause			OPTIONAL,
		-- In case the interRATMessage to be transferred is for GERAN Iu mode, the
		-- message should be placed in the HandoverFromUtranFailure-v590ext-IEs
		-- non-critical extension container.
		interRATMessage					CHOICE {
			gsm								SEQUENCE {
				gsm-MessageList						GSM-MessageList
			},
			cdma2000							SEQUENCE {
				cdma2000-MessageList				CDMA2000-MessageList
			}
		}				OPTIONAL,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			handoverFromUTRANFailure-r3-add-ext		BIT STRING	OPTIONAL,
			v590NonCriticalExtensions		SEQUENCE {
				handoverFromUTRANFailure-v590ext	HandoverFromUtranFailure-v590ext-IEs,
				nonCriticalExtensions			SEQUENCE {}		OPTIONAL
			}	OPTIONAL
		}	OPTIONAL
}

HandoverFromUtranFailure-v590ext-IEs ::= SEQUENCE {
	geranIu-MessageList						GERANIu-MessageList			OPTIONAL
}

-- ***************************************************
--
-- INTER RAT HANDOVER INFO
--
-- ***************************************************

InterRATHandoverInfo ::= SEQUENCE {
	-- This structure is defined for historical reasons, backward compatibility with 04.18
	predefinedConfigStatusList		CHOICE {
		absent							NULL,
		present							PredefinedConfigStatusList
	},
	uE-SecurityInformation			CHOICE {
		absent							NULL,
		present							UE-SecurityInformation
	},
	ue-CapabilityContainer			CHOICE {
		absent							NULL,
		-- present is an octet aligned string containing IE UE-RadioAccessCapabilityInfo
		present							OCTET STRING (SIZE (0..63))
	},
	-- Non critical extensions
	v390NonCriticalExtensions		CHOICE {
		absent							NULL,
		present							SEQUENCE {
			interRATHandoverInfo-v390ext	InterRATHandoverInfo-v390ext-IEs,
			v3a0NonCriticalExtensions		SEQUENCE  {
				interRATHandoverInfo-v3a0ext	InterRATHandoverInfo-v3a0ext-IEs,
				laterNonCriticalExtensions		SEQUENCE {
					interRATHandoverInfo-v3d0ext 	InterRATHandoverInfo-v3d0ext-IEs,
					-- Container for additional R99 extensions
					interRATHandoverInfo-r3-add-ext		BIT STRING	OPTIONAL,
					v3g0NonCriticalExtensions			SEQUENCE {
						interRATHandoverInfo-v3g0ext	InterRATHandoverInfo-v3g0ext-IEs,
						v4b0NonCriticalExtensions		SEQUENCE {
							interRATHandoverInfo-v4b0ext	InterRATHandoverInfo-v4b0ext-IEs,
							v4d0NonCriticalExtensions		SEQUENCE {
								interRATHandoverInfo-v4d0ext	InterRATHandoverInfo-v4d0ext-IEs,
								-- Reserved for future non critical extension
								v590NonCriticalExtensions		SEQUENCE {
									interRATHandoverInfo-v590ext
																InterRATHandoverInfo-v590ext-IEs,
									v6xyNonCriticalExtensions		SEQUENCE {
										interRATHandoverInfo-v6xy0ext
																InterRATHandoverInfo-v6xyext-IEs,
										nonCriticalExtensions			SEQUENCE {}	OPTIONAL
									}	OPTIONAL
								}	OPTIONAL
							}	OPTIONAL
						}	OPTIONAL
					}	OPTIONAL
				}	OPTIONAL
			}	OPTIONAL
		}
	}
}

InterRATHandoverInfo-v390ext-IEs ::= SEQUENCE {
	-- User equipment IEs
		ue-RadioAccessCapability-v380ext	UE-RadioAccessCapability-v380ext		OPTIONAL,
		dl-PhysChCapabilityFDD-v380ext		DL-PhysChCapabilityFDD-v380ext
}

InterRATHandoverInfo-v3a0ext-IEs ::= SEQUENCE {
	-- User equipment IEs
		ue-RadioAccessCapability-v3a0ext	UE-RadioAccessCapability-v3a0ext		OPTIONAL
}

InterRATHandoverInfo-v3d0ext-IEs ::= SEQUENCE {
	-- User equipment IEs
		uESpecificBehaviourInformation1interRAT		UESpecificBehaviourInformation1interRAT		OPTIONAL
}

InterRATHandoverInfo-v3g0ext-IEs ::= SEQUENCE {
	-- User equipment IEs
		ue-RadioAccessCapability-v3g0ext	UE-RadioAccessCapability-v3g0ext		OPTIONAL
}

InterRATHandoverInfo-v4b0ext-IEs ::= SEQUENCE {
	-- User equipment IEs
		accessStratumReleaseIndicator		AccessStratumReleaseIndicator
}

InterRATHandoverInfo-v4d0ext-IEs ::= SEQUENCE {
	-- User equipment IEs
	tdd128-RF-Capability				RadioFrequencyBandTDDList		OPTIONAL
}

InterRATHandoverInfo-v590ext-IEs ::= SEQUENCE {
	-- User equipment IEs
		predefinedConfigStatusListComp		PredefinedConfigStatusListComp			OPTIONAL,
		ue-RadioAccessCapabilityComp		UE-RadioAccessCapabilityComp			OPTIONAL
}

InterRATHandoverInfo-v6xyext-IEs ::= SEQUENCE {
	-- User equipment IEs
		ue-SecurityInformation2				UE-SecurityInformation2					OPTIONAL,
		ue-RadioAccessCapabilityComp		UE-RadioAccessCapabilityComp-ext		OPTIONAL
}

-- ***************************************************
--
-- MEASUREMENT CONTROL
--
-- ***************************************************

MeasurementControl ::= CHOICE {
	-- The Rel-4 functionality of UE Positioning OTDOA AssistanceData TDD is only available
	-- in the later-than-r3 branch of this message (i.e. through the use of the IE
	-- ue-Positioning-OTDOA-AssistanceData-r4)
	r3								SEQUENCE {
		measurementControl-r3			MeasurementControl-r3-IEs,
		v390nonCriticalExtensions		SEQUENCE {
			measurementControl-v390ext		MeasurementControl-v390ext,
			v3a0NonCriticalExtensions			SEQUENCE {
				measurementControl-v3a0ext			MeasurementControl-v3a0ext,
				laterNonCriticalExtensions		SEQUENCE {
					-- Container for additional R99 extensions
					measurementControl-r3-add-ext		BIT STRING	OPTIONAL,
					v4b0NonCriticalExtensions			SEQUENCE{
						-- The content of the v4b0 non-critical extension has been removed. If sent 
						-- to a UE of AS release 4, the UE behaviour is unspecified. A UE of AS 
						-- release 5 onward shall comply with the v4b0 and later extensions in this 
						-- branch of the message.
						v590NonCriticalExtensions		SEQUENCE {
							measurementControl-v590ext		MeasurementControl-v590ext-IEs,
							v5b0NonCriticalExtensions		SEQUENCE {
								measurementControl-v5b0ext		MeasurementControl-v5b0ext-IEs,
								nonCriticalExtensions			SEQUENCE {}		OPTIONAL
							}						OPTIONAL
						}						OPTIONAL
					}						OPTIONAL
				}						OPTIONAL
			}						OPTIONAL
		}						OPTIONAL
	},
	later-than-r3					SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				CHOICE {
			r4								SEQUENCE {
				measurementControl-r4			MeasurementControl-r4-IEs,
				v4d0NonCriticalExtensions			SEQUENCE {
					-- Container for adding non critical extensions after freezing REL-5
					measurementControl-r4-add-ext		BIT STRING		OPTIONAL,
					v590NonCriticalExtensions		SEQUENCE{
						measurementControl-v590ext		MeasurementControl-v590ext-IEs,
						v5b0NonCriticalExtensions		SEQUENCE {
							measurementControl-v5b0ext		MeasurementControl-v5b0ext-IEs,
							nonCriticalExtensions			SEQUENCE {}		OPTIONAL
						}	OPTIONAL
					}	OPTIONAL
				}	OPTIONAL
			},
			criticalExtensions				SEQUENCE {}
		}
	}
}

MeasurementControl-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
	-- Measurement IEs
		measurementIdentity		MeasurementIdentity,
		-- TABULAR: The measurement type is included in MeasurementCommand.
		measurementCommand				MeasurementCommand,
		measurementReportingMode		MeasurementReportingMode			OPTIONAL,
		additionalMeasurementList		AdditionalMeasurementID-List		OPTIONAL,
	-- Physical channel IEs
		dpch-CompressedModeStatusInfo	DPCH-CompressedModeStatusInfo		OPTIONAL
}

MeasurementControl-v390ext ::= SEQUENCE {
		ue-Positioning-Measurement-v390ext		UE-Positioning-Measurement-v390ext	OPTIONAL
}

MeasurementControl-v3a0ext ::= SEQUENCE {
	sfn-Offset-Validity				SFN-Offset-Validity		OPTIONAL
}

MeasurementControl-r4-IEs ::= SEQUENCE {
	-- Measurement IEs
		measurementIdentity		MeasurementIdentity,
		-- TABULAR: The measurement type is included in measurementCommand.
		measurementCommand				MeasurementCommand-r4,
		measurementReportingMode		MeasurementReportingMode			OPTIONAL,
		additionalMeasurementList		AdditionalMeasurementID-List		OPTIONAL,
	-- Physical channel IEs
		dpch-CompressedModeStatusInfo	DPCH-CompressedModeStatusInfo		OPTIONAL
}

MeasurementControl-v590ext-IEs ::= SEQUENCE {
	measurementCommand-v590ext 			CHOICE {
		-- the choice intra-frequency shall be used for the case of intra-frequency measurement,
		-- as well as when intra-frequency events are configured for inter-frequency measurement
		intra-frequency						Intra-FreqEventCriteriaList-v590ext,
		inter-frequency						Inter-FreqEventCriteriaList-v590ext
	}		OPTIONAL,
	intraFreqReportingCriteria-1b-r5		IntraFreqReportingCriteria-1b-r5	OPTIONAL,
	intraFreqEvent-1d-r5					IntraFreqEvent-1d-r5				OPTIONAL,
	-- most significant part of "RRC transaction identifier" (MSP),
	-- "RRC transaction identifier" = rrc-TransactionIdentifier-MSP-v590ext * 4 + 
	-- rrc-TransactionIdentifier
	rrc-TransactionIdentifier-MSP-v590ext	RRC-TransactionIdentifier
}

MeasurementControl-v5b0ext-IEs ::= 	SEQUENCE {
	interRATCellInfoIndication			InterRATCellInfoIndication			OPTIONAL
}

-- ***************************************************
--
-- MEASUREMENT CONTROL FAILURE
--
-- ***************************************************

MeasurementControlFailure ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		failureCause					FailureCauseWithProtErr,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			measurementControlFailure-r3-add-ext		BIT STRING		OPTIONAL,
			v590NonCriticalExtensions		SEQUENCE {
				measurementControlFailure-v590ext		MeasurementControlFailure-v590ext-IEs,
				nonCriticalExtensions			SEQUENCE {}		OPTIONAL
			}	OPTIONAL
		}	OPTIONAL
}

MeasurementControlFailure-v590ext-IEs ::= SEQUENCE {
	-- most significant part of "RRC transaction identifier" (MSP),
	-- "RRC transaction identifier" = rrc-TransactionIdentifier-MSP-v590ext * 4 + 
	-- rrc-TransactionIdentifier
	-- If the rrc-TransactionIdentifier-MSP-v590ext was not received in the MEASUREMENT CONTROL 
	-- message, then the rrc-TransactionIdentifier-MSP-v590ext shall be set to zero
	rrc-TransactionIdentifier-MSP-v590ext	RRC-TransactionIdentifier
}

-- ***************************************************
--
-- MEASUREMENT REPORT
--
-- ***************************************************

MeasurementReport ::= SEQUENCE {
	-- Measurement IEs
		measurementIdentity		MeasurementIdentity,
		measuredResults					MeasuredResults						OPTIONAL,
		measuredResultsOnRACH			MeasuredResultsOnRACH				OPTIONAL,
		additionalMeasuredResults		MeasuredResultsList					OPTIONAL,
		eventResults					EventResults						OPTIONAL,
	-- Non-critical extensions
		v390nonCriticalExtensions			SEQUENCE {
			measurementReport-v390ext		MeasurementReport-v390ext,
			laterNonCriticalExtensions		SEQUENCE {
				-- Container for additional R99 extensions
				measurementReport-r3-add-ext		BIT STRING		OPTIONAL,
				v4b0NonCriticalExtensions		SEQUENCE {
					measurementReport-v4b0ext		MeasurementReport-v4b0ext-IEs,
					-- Extension mechanism for non-Rel4 information
					v590NonCriticalExtensions	SEQUENCE {
						measurementReport-v590ext		MeasurementReport-v590ext-IEs,
						v5b0NonCriticalExtensions		SEQUENCE {
							measurementReport-v5b0ext		MeasurementReport-v5b0ext-IEs,
							v6xyNonCriticalExtensions			SEQUENCE {
								measurementReport-v6xyext		MeasurementReport-v6xyext-IEs,
								nonCriticalExtensions			SEQUENCE {}				OPTIONAL
							}		OPTIONAL
						}		OPTIONAL
					}		OPTIONAL
				}		OPTIONAL
			}		OPTIONAL
		}		OPTIONAL
}

MeasurementReport-v390ext ::= SEQUENCE {
		measuredResults-v390ext			MeasuredResults-v390ext				OPTIONAL
}

MeasurementReport-v4b0ext-IEs ::= SEQUENCE {
	interFreqEventResults-LCR		InterFreqEventResults-LCR-r4-ext		OPTIONAL,
	-- additionalMeasuredResults-LCR shall contain measurement results and additional measurement
	-- results list.
	additionalMeasuredResults-LCR	MeasuredResultsList-LCR-r4-ext			OPTIONAL,
	gsmOTDreferenceCell				PrimaryCPICH-Info						OPTIONAL
}

MeasurementReport-v590ext-IEs ::= SEQUENCE {
	measuredResults-v590ext				MeasuredResults-v590ext				OPTIONAL
}

MeasurementReport-v5b0ext-IEs ::= 	SEQUENCE {
	interRATCellInfoIndication			InterRATCellInfoIndication			OPTIONAL
}

MeasurementReport-v6xyext-IEs ::= SEQUENCE {
	measuredResultsOnRACHinterFreq		MeasuredResultsOnRACHinterFreq		OPTIONAL
}

-- ***************************************************
--
-- PAGING TYPE 1
--
-- ***************************************************

PagingType1 ::= SEQUENCE {
	-- User equipment IEs
		pagingRecordList				PagingRecordList					OPTIONAL,
	-- Other IEs
		bcch-ModificationInfo			BCCH-ModificationInfo				OPTIONAL,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			pagingType1-r3-add-ext			BIT STRING		OPTIONAL,
			v590NonCriticalExtensions		SEQUENCE {
				pagingType1-v590ext				PagingType1-v590ext-IEs,
				nonCriticalExtensions			SEQUENCE {}		OPTIONAL
			}	OPTIONAL
		}	OPTIONAL
}

PagingType1-v590ext-IEs ::= SEQUENCE {
	-- User equipment IEs
		pagingRecord2List				PagingRecord2List-r5				OPTIONAL
}

-- ***************************************************
--
-- PAGING TYPE 2
--
-- ***************************************************

PagingType2 ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		pagingCause						PagingCause,
	-- Core network IEs
		cn-DomainIdentity				CN-DomainIdentity,
		pagingRecordTypeID				PagingRecordTypeID,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			pagingType2-r3-add-ext			BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		}	OPTIONAL
}

-- ***************************************************
--
-- PHYSICAL CHANNEL RECONFIGURATION
--
-- ***************************************************

PhysicalChannelReconfiguration ::= CHOICE {
	r3								SEQUENCE {
		physicalChannelReconfiguration-r3
										PhysicalChannelReconfiguration-r3-IEs,
		v3a0NonCriticalExtensions			SEQUENCE {
			physicalChannelReconfiguration-v3a0ext		PhysicalChannelReconfiguration-v3a0ext,
			laterNonCriticalExtensions		SEQUENCE {
				-- Container for additional R99 extensions
				physicalChannelReconfiguration-r3-add-ext			BIT STRING		OPTIONAL,
				v4b0NonCriticalExtenstions			SEQUENCE {
					physicalChannelReconfiguration-v4b0ext
												PhysicalChannelReconfiguration-v4b0ext-IEs,
					v590NonCriticalExtenstions			SEQUENCE {
						physicalChannelReconfiguration-v590ext
													PhysicalChannelReconfiguration-v590ext-IEs,
						v6xyNonCriticalExtensions		SEQUENCE {
							physicalChannelReconfiguration-v6xyext		
														PhysicalChannelReconfiguration-v6xyext-IEs,
							nonCriticalExtensions					SEQUENCE {} OPTIONAL
						}	OPTIONAL
					}	OPTIONAL
				}	OPTIONAL
			}	OPTIONAL
		}	OPTIONAL
	},
	later-than-r3					SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
			criticalExtensions				CHOICE {
			r4								SEQUENCE {
				physicalChannelReconfiguration-r4
												PhysicalChannelReconfiguration-r4-IEs,
				v4d0NonCriticalExtensions			SEQUENCE {
					-- Container for adding non critical extensions after freezing REL-5
					physicalChannelReconfiguration-r4-add-ext		BIT STRING		OPTIONAL,
					v590NonCriticalExtenstions			SEQUENCE {
						physicalChannelReconfiguration-v590ext
												PhysicalChannelReconfiguration-v590ext-IEs,
						v6xyNonCriticalExtensions		SEQUENCE {
							physicalChannelReconfiguration-v6xyext		
														PhysicalChannelReconfiguration-v6xyext-IEs,
							nonCriticalExtensions			SEQUENCE {}		OPTIONAL
						}	OPTIONAL
					}	OPTIONAL
				}	OPTIONAL
			},
			criticalExtensions				CHOICE {
				r5								SEQUENCE {
					physicalChannelReconfiguration-r5
													PhysicalChannelReconfiguration-r5-IEs,
					-- Container for adding non critical extensions after freezing REL-6
					physicalChannelReconfiguration-r5-add-ext		BIT STRING		OPTIONAL,
					v6xyNonCriticalExtensions		SEQUENCE {
						physicalChannelReconfiguration-v6xyext		
														PhysicalChannelReconfiguration-v6xyext-IEs,
						nonCriticalExtensions			SEQUENCE {}		OPTIONAL
					}	OPTIONAL
				},
				criticalExtensions				CHOICE {
					r6								SEQUENCE {
						physicalChannelReconfiguration-r6
														PhysicalChannelReconfiguration-r6-IEs,
						-- Container for adding non critical extensions after freezing REL-7
						physicalChannelReconfiguration-r6-add-ext		BIT STRING		OPTIONAL,
						nonCriticalExtensions			SEQUENCE {}		OPTIONAL
					},
					criticalExtensions				SEQUENCE {}
				}
			}
		}
	}
}

PhysicalChannelReconfiguration-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
	-- Core network IEs
		cn-InformationInfo				CN-InformationInfo					OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Radio bearer IEs
		dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo		OPTIONAL,
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		-- Note: the reference to CPCH in the element name below is incorrect. The name is not
		-- changed to keep it aligned with R99.
		ul-ChannelRequirement			UL-ChannelRequirementWithCPCH-SetID		OPTIONAL,
		modeSpecificInfo				CHOICE {
			fdd								SEQUENCE {
				-- dummy is not used in this version of specification, it should
				-- not be sent and if received it should be ignored.
				dummy							DL-PDSCH-Information		OPTIONAL
			},
			tdd								NULL
		},
		dl-CommonInformation			DL-CommonInformation				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List			OPTIONAL
}

PhysicalChannelReconfiguration-v3a0ext ::= SEQUENCE {
	-- The IE new-DSCH-RNTI should not be included in FDD mode, and if received the UE behaviour
	-- is unspecified
	new-DSCH-RNTI					DSCH-RNTI							OPTIONAL
}

PhysicalChannelReconfiguration-v4b0ext-IEs ::= SEQUENCE {
	-- Physical channel IEs
		-- dummy is not used in this version of the specification, it should
		-- not be sent and if received it should be ignored.
		dummy								SSDT-UL								OPTIONAL,
		-- The order of the RLs in IE cell-id-PerRL-List is the same as
		-- in IE DL-InformationPerRL-List included in this message
		cell-id-PerRL-List					CellIdentity-PerRL-List				OPTIONAL
}

PhysicalChannelReconfiguration-v590ext-IEs ::= SEQUENCE {
	-- Physical channel IEs
		dl-TPC-PowerOffsetPerRL-List	DL-TPC-PowerOffsetPerRL-List		OPTIONAL
}

PhysicalChannelReconfiguration-r4-IEs ::= SEQUENCE {
	-- User equipment IEs
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		-- The IE new-DSCH-RNTI should not be included in FDD mode, and if received
		-- the UE behaviour is unspecified
		new-DSCH-RNTI					DSCH-RNTI							OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
	-- Core network IEs
		cn-InformationInfo				CN-InformationInfo					OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Radio bearer IEs
		dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo		OPTIONAL,
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		-- Note: the reference to CPCH in the element name below is incorrect. The name is not
		-- changed to keep it aligned with R99.
		ul-ChannelRequirement			UL-ChannelRequirementWithCPCH-SetID-r4	OPTIONAL,
		modeSpecificInfo				CHOICE {
			fdd								SEQUENCE {
				-- dummy is not used in this version of specification, it should
				-- not be sent and if received it should be ignored.
				dummy							DL-PDSCH-Information		OPTIONAL
			},
			tdd								NULL
		},
		dl-CommonInformation			DL-CommonInformation-r4				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List-r4			OPTIONAL
}

PhysicalChannelReconfiguration-r5-IEs ::= SEQUENCE {
	-- User equipment IEs
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		-- The IE new-DSCH-RNTI should not be included in FDD mode, and if received
		-- the UE behaviour is unspecified
		new-DSCH-RNTI					DSCH-RNTI							OPTIONAL,
		new-H-RNTI						H-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
	-- Core network IEs
		cn-InformationInfo				CN-InformationInfo					OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Radio bearer IEs
		dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo-r5	OPTIONAL,
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		-- Note: the reference to CPCH in the element name below is incorrect. The name is not
		-- changed to keep it aligned with R99.
		ul-ChannelRequirement			UL-ChannelRequirementWithCPCH-SetID-r5	OPTIONAL,
		modeSpecificInfo				CHOICE {
			fdd								SEQUENCE {
				-- dummy is not used in this version of specification, it should
				-- not be sent and if received it should be ignored.
				dummy							DL-PDSCH-Information		OPTIONAL
			},
			tdd								NULL
		},
		dl-HSPDSCH-Information			DL-HSPDSCH-Information				OPTIONAL,
		dl-CommonInformation			DL-CommonInformation-r5				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List-r5			OPTIONAL
}

PhysicalChannelReconfiguration-r6-IEs ::= SEQUENCE {
	-- User equipment IEs
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		delayRestrictionFlag			DelayRestrictionFlag				OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		-- The IE new-DSCH-RNTI should not be included in FDD mode,
		-- and if received the UE behaviour is unspecified
		new-DSCH-RNTI					DSCH-RNTI							OPTIONAL,
		new-H-RNTI						H-RNTI								OPTIONAL,
		newPrimary-E-RNTI				E-RNTI								OPTIONAL,
		newSecondary-E-RNTI				E-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
	-- Core network IEs
		cn-InformationInfo				CN-InformationInfo-r6				OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Radio bearer IEs
		dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo-r5	OPTIONAL,
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-DPCH-Info					UL-DPCH-Info-r6						OPTIONAL,
		ul-EDCH-Information				UL-EDCH-Information-r6				OPTIONAL,
		dl-HSPDSCH-Information			DL-HSPDSCH-Information-r6			OPTIONAL,
		dl-CommonInformation			DL-CommonInformation-r6				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List-r6			OPTIONAL,
	-- MBMS IEs
		mbms-PL-ServiceRestrictInfo		MBMS-PL-ServiceRestrictInfo-r6		OPTIONAL
}

PhysicalChannelReconfiguration-v6xyext-IEs ::= SEQUENCE {
	-- User Equipment IEs
		delayRestrictionFlag			DelayRestrictionFlag 				OPTIONAL,
	-- Core network IEs
		primary-plmn-Identity			PLMN-Identity						OPTIONAL,
	-- Physical channel IEs
		-- The IE harq-Preamble-Mode should not be used in the r3 and r4 versions of the message
		-- If included in the r3 or r4 version of the message, the UE should ignore the IE
		harq-Preamble-Mode				HARQ-Preamble-Mode					OPTIONAL,
		beaconPLEst						BEACON-PL-Est						OPTIONAL,
		postVerificationPeriod			ENUMERATED { true }					OPTIONAL,
		dhs-sync						DHS-Sync							OPTIONAL,
		timingMaintainedSynchInd		TimingMaintainedSynchInd			OPTIONAL,
	-- MBMS IEs
		mbms-PL-ServiceRestrictInfo		MBMS-PL-ServiceRestrictInfo-r6		OPTIONAL
}

-- ***************************************************
--
-- PHYSICAL CHANNEL RECONFIGURATION COMPLETE
--
-- ***************************************************

PhysicalChannelReconfigurationComplete ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		ul-IntegProtActivationInfo		IntegrityProtActivationInfo			OPTIONAL,
		-- TABULAR: UL-TimingAdvance is applicable for TDD mode only.
		ul-TimingAdvance				UL-TimingAdvance					OPTIONAL,
	-- Radio bearer IEs
		count-C-ActivationTime			ActivationTime						OPTIONAL,
		-- dummy is not used in this version of the specification and
		-- it should be ignored by the receiver.
		dummy							RB-ActivationTimeInfoList			OPTIONAL,
		ul-CounterSynchronisationInfo	UL-CounterSynchronisationInfo		OPTIONAL,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			physicalChannelReconfigurationComplete-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		}	OPTIONAL
}

-- ***************************************************
--
-- PHYSICAL CHANNEL RECONFIGURATION FAILURE
--
-- ***************************************************

PhysicalChannelReconfigurationFailure ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier			OPTIONAL,
		failureCause					FailureCauseWithProtErr,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			physicalChannelReconfigurationFailure-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		}	OPTIONAL
}

-- ***************************************************
--
-- PHYSICAL SHARED CHANNEL ALLOCATION (TDD only)
--
-- ***************************************************

PhysicalSharedChannelAllocation ::= CHOICE {
	r3								SEQUENCE {
		physicalSharedChannelAllocation-r3
										PhysicalSharedChannelAllocation-r3-IEs,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			physicalSharedChannelAllocation-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}	OPTIONAL
		}	OPTIONAL
	},
	later-than-r3					SEQUENCE {
		dsch-RNTI						DSCH-RNTI							OPTIONAL,
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				CHOICE {
			r4								SEQUENCE {
				physicalSharedChannelAllocation-r4
												PhysicalSharedChannelAllocation-r4-IEs,
				v4d0NonCriticalExtensions		SEQUENCE {
					-- Container for adding non critical extensions after freezing REL-5
					physicalSharedChannelAllocation-r4-add-ext		BIT STRING		OPTIONAL,
					v6xyNonCriticalExtensions		SEQUENCE {
						physicalSharedChannelAllocation-v6xyext
														PhysicalSharedChannelAllocation-v6xyext-IEs,
						nonCriticalExtensions			SEQUENCE {}		OPTIONAL
					}		OPTIONAL
				}		OPTIONAL
			},
			criticalExtensions				SEQUENCE {}
		}
	}
}

PhysicalSharedChannelAllocation-r3-IEs ::= SEQUENCE {
	-- TABULAR: Integrity protection shall not be performed on this message.
	-- User equipment IEs
		dsch-RNTI						DSCH-RNTI							OPTIONAL,
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
	-- Physical channel IEs
		ul-TimingAdvance				UL-TimingAdvanceControl				OPTIONAL,
		pusch-CapacityAllocationInfo	PUSCH-CapacityAllocationInfo		OPTIONAL,
		pdsch-CapacityAllocationInfo	PDSCH-CapacityAllocationInfo		OPTIONAL,
		-- TABULAR: If confirmRequest is not present, the default value "No Confirm"
		-- shall be used as specified in 10.2.25.		
		confirmRequest					ENUMERATED {
											confirmPDSCH, confirmPUSCH }	OPTIONAL,
		trafficVolumeReportRequest		INTEGER (0..255)					OPTIONAL,	
		iscpTimeslotList					TimeslotList						OPTIONAL,
		requestPCCPCHRSCP					BOOLEAN
}

PhysicalSharedChannelAllocation-r4-IEs ::= SEQUENCE {
	-- TABULAR: Integrity protection shall not be performed on this message.
	-- Physical channel IEs
		ul-TimingAdvance				UL-TimingAdvanceControl-r4			OPTIONAL,
		pusch-CapacityAllocationInfo	PUSCH-CapacityAllocationInfo-r4		OPTIONAL,
		pdsch-CapacityAllocationInfo	PDSCH-CapacityAllocationInfo-r4		OPTIONAL,
		-- TABULAR: If confirmRequest is not present, the default value "No Confirm"
		-- shall be used as specified in 10.2.25.		
		confirmRequest					ENUMERATED {
											confirmPDSCH, confirmPUSCH }	OPTIONAL,
		trafficVolumeReportRequest		INTEGER (0..255)					OPTIONAL,
		iscpTimeslotList				TimeslotList-r4						OPTIONAL,
		requestPCCPCHRSCP				BOOLEAN
}

PhysicalSharedChannelAllocation-v6xyext-IEs ::= SEQUENCE {
	-- Physical Channel IEs
		beaconPLEst						BEACON-PL-Est						OPTIONAL
}

-- ***************************************************
--
-- PUSCH CAPACITY REQUEST (TDD only)
--
-- ***************************************************

PUSCHCapacityRequest ::= SEQUENCE {
	-- User equipment IEs
		dsch-RNTI						DSCH-RNTI							OPTIONAL,
	-- Measurement IEs
		trafficVolume					TrafficVolumeMeasuredResultsList	OPTIONAL,
		timeslotListWithISCP			TimeslotListWithISCP				OPTIONAL,
		primaryCCPCH-RSCP				PrimaryCCPCH-RSCP					OPTIONAL,
		allocationConfirmation			CHOICE {
			pdschConfirmation				PDSCH-Identity,
			puschConfirmation				PUSCH-Identity
		}																	OPTIONAL,
		protocolErrorIndicator			ProtocolErrorIndicatorWithMoreInfo,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			puschCapacityRequest-r3-add-ext		BIT STRING		OPTIONAL,
			v590NonCriticalExtensions		SEQUENCE {
				puschCapacityRequest-v590ext	PUSCHCapacityRequest-v590ext,
				nonCriticalExtensions			SEQUENCE {}	OPTIONAL
			}		OPTIONAL
		}	OPTIONAL
}

PUSCHCapacityRequest-v590ext ::= SEQUENCE {
	primaryCCPCH-RSCP-delta				DeltaRSCP			OPTIONAL
}
-- ***************************************************
--
-- RADIO BEARER RECONFIGURATION
--
-- ***************************************************

RadioBearerReconfiguration ::= CHOICE {
	r3								SEQUENCE {
		radioBearerReconfiguration-r3	RadioBearerReconfiguration-r3-IEs,
		-- Prefix "v3ao" is used (in one instance) to keep alignment with R99
		v3aoNonCriticalExtensions		SEQUENCE {
			radioBearerReconfiguration-v3a0ext	RadioBearerReconfiguration-v3a0ext,
			laterNonCriticalExtensions		SEQUENCE {
				-- Container for additional R99 extensions
				radioBearerReconfiguration-r3-add-ext		BIT STRING		OPTIONAL,
				v4b0NonCriticalExtensions			SEQUENCE {
					radioBearerReconfiguration-v4b0ext	
													RadioBearerReconfiguration-v4b0ext-IEs,
					v590NonCriticalExtensions			SEQUENCE {
						radioBearerReconfiguration-v590ext	
														RadioBearerReconfiguration-v590ext-IEs,
						v5d0NonCriticalExtenstions			SEQUENCE {
							radioBearerReconfiguration-v5d0ext
															RadioBearerReconfiguration-v5d0ext-IEs,
							v6xyNonCriticalExtensions		SEQUENCE {
								radioBearerReconfiguration-v6xyext
															RadioBearerReconfiguration-v6xyext-IEs,
								nonCriticalExtensions			SEQUENCE {} OPTIONAL
							}	OPTIONAL
						}	OPTIONAL
					}	OPTIONAL
				}	OPTIONAL
			}	OPTIONAL
		}	OPTIONAL
	},
	later-than-r3					SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				CHOICE {
			r4								SEQUENCE {
				radioBearerReconfiguration-r4	RadioBearerReconfiguration-r4-IEs,
				v4d0NonCriticalExtensions			SEQUENCE {
					-- Container for adding non critical extensions after freezing REL-5
					radioBearerReconfiguration-r4-add-ext		BIT STRING		OPTIONAL,
					v590NonCriticalExtensions			SEQUENCE {
						radioBearerReconfiguration-v590ext	
													RadioBearerReconfiguration-v590ext-IEs,
						v5d0NonCriticalExtenstions			SEQUENCE {
							radioBearerReconfiguration-v5d0ext
															RadioBearerReconfiguration-v5d0ext-IEs,
							v6xyNonCriticalExtensions		SEQUENCE {
								radioBearerReconfiguration-v6xyext
															RadioBearerReconfiguration-v6xyext-IEs,
								nonCriticalExtensions			SEQUENCE {}		OPTIONAL
							}	OPTIONAL
						}	OPTIONAL
					}	OPTIONAL
				}	OPTIONAL
			},
			criticalExtensions				CHOICE {
				r5									SEQUENCE {
					radioBearerReconfiguration-r5		RadioBearerReconfiguration-r5-IEs,
					-- Container for adding non critical extensions after freezing REL-6
					radioBearerReconfiguration-r5-add-ext		BIT STRING		OPTIONAL,
					v5d0NonCriticalExtenstions			SEQUENCE {
						radioBearerReconfiguration-v5d0ext	RadioBearerReconfiguration-v5d0ext-IEs,
						v6xyNonCriticalExtensions			SEQUENCE {
							radioBearerReconfiguration-v6xyext
															RadioBearerReconfiguration-v6xyext-IEs,
							nonCriticalExtensions				SEQUENCE {}		OPTIONAL
						}	OPTIONAL
					}	OPTIONAL
				},
				criticalExtensions				CHOICE {
					r6									SEQUENCE {
						radioBearerReconfiguration-r6		RadioBearerReconfiguration-r6-IEs,
						-- Container for adding non critical extensions after freezing REL-7
						radioBearerReconfiguration-r6-add-ext		BIT STRING		OPTIONAL,
						nonCriticalExtensions				SEQUENCE {}		OPTIONAL
					},
					criticalExtensions				SEQUENCE {}
				}
			}
		}
	}
}

RadioBearerReconfiguration-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
	-- Core network IEs
		cn-InformationInfo				CN-InformationInfo					OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Radio bearer IEs
		rab-InformationReconfigList		RAB-InformationReconfigList			OPTIONAL,
		-- NOTE: IE rb-InformationReconfigList should be optional in later versions
		-- of this message
		rb-InformationReconfigList		RB-InformationReconfigList,
		rb-InformationAffectedList		RB-InformationAffectedList			OPTIONAL,
	-- Transport channel IEs
		ul-CommonTransChInfo			UL-CommonTransChInfo				OPTIONAL,
		ul-deletedTransChInfoList		UL-DeletedTransChInfoList			OPTIONAL,
		ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList			OPTIONAL,
		-- 'dummy', 'dummy1' and 'dummy2' are not used in this version of the specification,
		-- they should not be sent and if received they should be ignored.
		dummy							CHOICE {
			fdd								SEQUENCE {
				dummy1							CPCH-SetID					OPTIONAL,
				dummy2							DRAC-StaticInformationList	OPTIONAL
			},
			tdd								NULL
		}																	OPTIONAL,
		dl-CommonTransChInfo			DL-CommonTransChInfo				OPTIONAL,
		dl-DeletedTransChInfoList		DL-DeletedTransChInfoList			OPTIONAL,
		dl-AddReconfTransChInfoList		DL-AddReconfTransChInfo2List		OPTIONAL,
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-ChannelRequirement			UL-ChannelRequirement				OPTIONAL,
		modeSpecificPhysChInfo			CHOICE {
			fdd								SEQUENCE {
				-- dummy is not used in this version of specification, it should
				-- not be sent and if received it should be ignored.
				dummy							DL-PDSCH-Information		OPTIONAL
			},
			tdd								NULL
		},
		dl-CommonInformation			DL-CommonInformation				OPTIONAL,
		-- NOTE: IE dl-InformationPerRL-List is optional in later versions
		-- of this message
		dl-InformationPerRL-List		DL-InformationPerRL-List
}

RadioBearerReconfiguration-v3a0ext ::= SEQUENCE {
	-- The IE new-DSCH-RNTI should not be included in FDD mode, and if received the UE behaviour
	-- is unspecified
	new-DSCH-RNTI					DSCH-RNTI							OPTIONAL
}

RadioBearerReconfiguration-v4b0ext-IEs ::= SEQUENCE {
	-- Physical channel IEs
		-- dummy is not used in this version of the specification, it should
		-- not be sent and if received it should be ignored.
		dummy								SSDT-UL								OPTIONAL,
		-- The order of the RLs in IE cell-id-PerRL-List is the same as
		-- in IE DL-InformationPerRL-List included in this message
		cell-id-PerRL-List					CellIdentity-PerRL-List				OPTIONAL
}

RadioBearerReconfiguration-v590ext-IEs ::= SEQUENCE {
	-- Physical channel IEs
		dl-TPC-PowerOffsetPerRL-List	DL-TPC-PowerOffsetPerRL-List		OPTIONAL
}

RadioBearerReconfiguration-v5d0ext-IEs ::= SEQUENCE {
	--Radio Bearer IEs
		pdcp-ROHC-TargetMode			PDCP-ROHC-TargetMode				OPTIONAL
}

RadioBearerReconfiguration-r4-IEs ::= SEQUENCE {
	-- User equipment IEs
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		-- The IE new-DSCH-RNTI should not be included in FDD mode, and if received
		-- the UE behaviour is unspecified
		new-DSCH-RNTI					DSCH-RNTI							OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
	-- Core network IEs
		cn-InformationInfo				CN-InformationInfo					OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Radio bearer IEs
		rab-InformationReconfigList		RAB-InformationReconfigList			OPTIONAL,
		rb-InformationReconfigList		RB-InformationReconfigList-r4		OPTIONAL,
		rb-InformationAffectedList		RB-InformationAffectedList			OPTIONAL,
	-- Transport channel IEs
		ul-CommonTransChInfo			UL-CommonTransChInfo-r4				OPTIONAL,
		ul-deletedTransChInfoList		UL-DeletedTransChInfoList			OPTIONAL,
		ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList			OPTIONAL,
		-- 'dummy', 'dummy1' and 'dummy2' are not used in this version of the specification,
		-- they should not be sent and if received they should be ignored.
		dummy							CHOICE {
			fdd								SEQUENCE {
				dummy1							CPCH-SetID					OPTIONAL,
				dummy2							DRAC-StaticInformationList	OPTIONAL
			},
			tdd								NULL
		}																	OPTIONAL,
		dl-CommonTransChInfo			DL-CommonTransChInfo-r4				OPTIONAL,
		dl-DeletedTransChInfoList		DL-DeletedTransChInfoList			OPTIONAL,
		dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList-r4		OPTIONAL,
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-ChannelRequirement			UL-ChannelRequirement-r4			OPTIONAL,
		modeSpecificPhysChInfo			CHOICE {
			fdd								SEQUENCE {
				-- dummy is not used in this version of specification, it should
				-- not be sent and if received it should be ignored.
				dummy							DL-PDSCH-Information		OPTIONAL
			},
			tdd								NULL
		},
		dl-CommonInformation			DL-CommonInformation-r4				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List-r4 		OPTIONAL
}

RadioBearerReconfiguration-r5-IEs ::= SEQUENCE {
	-- User equipment IEs
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		-- The IE new-DSCH-RNTI should not be included in FDD mode, and if received 
		-- the UE behaviour is unspecified
		new-DSCH-RNTI					DSCH-RNTI							OPTIONAL,
		new-H-RNTI						H-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
	-- Core network IEs
		cn-InformationInfo				CN-InformationInfo					OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Specification mode information
		specificationMode				CHOICE {
			complete						SEQUENCE {
			-- Radio bearer IEs
				rab-InformationReconfigList		RAB-InformationReconfigList			OPTIONAL,
				rb-InformationReconfigList		RB-InformationReconfigList-r5		OPTIONAL,
				rb-InformationAffectedList		RB-InformationAffectedList-r5		OPTIONAL,
				rb-PDCPContextRelocationList	RB-PDCPContextRelocationList		OPTIONAL,
			-- Transport channel IEs
				ul-CommonTransChInfo			UL-CommonTransChInfo-r4				OPTIONAL,
				ul-deletedTransChInfoList		UL-DeletedTransChInfoList			OPTIONAL,
				ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList			OPTIONAL,
				-- 'dummy', 'dummy1' and 'dummy2' are not used in this version of the
				-- specification, they should not be sent and if received they should be ignored.
				dummy							CHOICE {
					fdd								SEQUENCE {
						dummy1							CPCH-SetID					OPTIONAL,
						dummy2							DRAC-StaticInformationList	OPTIONAL
					},
					tdd								NULL
				}																	OPTIONAL,
				dl-CommonTransChInfo			DL-CommonTransChInfo-r4				OPTIONAL,
				dl-DeletedTransChInfoList		DL-DeletedTransChInfoList-r5		OPTIONAL,
				dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList-r5		OPTIONAL
			},
			preconfiguration				SEQUENCE {
			-- All IEs that include an FDD/TDD choice are split in two IEs for this message,
			-- one for the FDD only elements and one for the TDD only elements, so that one
			-- FDD/TDD choice in this level is sufficient.
				preConfigMode					CHOICE {
					predefinedConfigIdentity		PredefinedConfigIdentity,
					defaultConfig					SEQUENCE {
						defaultConfigMode				DefaultConfigMode,
						defaultConfigIdentity 			DefaultConfigIdentity-r5
					}
				}
			}
		},
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-ChannelRequirement			UL-ChannelRequirement-r5			OPTIONAL,
		modeSpecificPhysChInfo			CHOICE {
			fdd								SEQUENCE {
				-- dummy is not used in this version of specification, it should
				-- not be sent and if received it should be ignored.
				dummy							DL-PDSCH-Information		OPTIONAL
			},
			tdd								NULL
		},
		dl-HSPDSCH-Information			DL-HSPDSCH-Information				OPTIONAL,
		dl-CommonInformation			DL-CommonInformation-r5				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List-r5 		OPTIONAL
}

RadioBearerReconfiguration-r6-IEs ::= SEQUENCE {
	-- User equipment IEs
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		delayRestrictionFlag			DelayRestrictionFlag				OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		-- The IE new-DSCH-RNTI should not be included in FDD mode,
		-- and if received the UE behaviour is unspecified
		new-DSCH-RNTI					DSCH-RNTI							OPTIONAL,
		new-H-RNTI						H-RNTI								OPTIONAL,
		newPrimary-E-RNTI				E-RNTI								OPTIONAL,
		newSecondary-E-RNTI				E-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
	-- Core network IEs
		cn-InformationInfo				CN-InformationInfo-r6				OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Specification mode information
		specificationMode				CHOICE {
			complete						SEQUENCE {
			-- Radio bearer IEs
				rab-InformationReconfigList		RAB-InformationReconfigList			OPTIONAL,
				rb-InformationReconfigList		RB-InformationReconfigList-r6		OPTIONAL,
				rb-InformationAffectedList		RB-InformationAffectedList-r6		OPTIONAL,
				rb-PDCPContextRelocationList	RB-PDCPContextRelocationList		OPTIONAL,
				pdcp-ROHC-TargetMode			PDCP-ROHC-TargetMode				OPTIONAL,
			-- Transport channel IEs
				ul-CommonTransChInfo			UL-CommonTransChInfo-r4				OPTIONAL,
				ul-deletedTransChInfoList		UL-DeletedTransChInfoList-r6		OPTIONAL,
				ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList-r6		OPTIONAL,
				dl-CommonTransChInfo			DL-CommonTransChInfo-r4				OPTIONAL,
				dl-DeletedTransChInfoList		DL-DeletedTransChInfoList-r5		OPTIONAL,
				dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList-r5		OPTIONAL
			},
			preconfiguration				SEQUENCE {
			-- All IEs that include an FDD/TDD choice are split in two IEs for this message,
			-- one for the FDD only elements and one for the TDD only elements, so that one
			-- FDD/TDD choice in this level is sufficient.
				preConfigMode					CHOICE {
					predefinedConfigIdentity		PredefinedConfigIdentity,
					defaultConfig					SEQUENCE {
						defaultConfigMode				DefaultConfigMode,
						defaultConfigIdentity 			DefaultConfigIdentity-r5
					}
				}
			}
		},
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-DPCH-Info					UL-DPCH-Info-r6						OPTIONAL,
		ul-EDCH-Information				UL-EDCH-Information-r6				OPTIONAL,
		dl-HSPDSCH-Information			DL-HSPDSCH-Information-r6			OPTIONAL,
		dl-CommonInformation			DL-CommonInformation-r6				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List-r6			OPTIONAL,
	-- MBMS IEs
		mbms-PL-ServiceRestrictInfo		MBMS-PL-ServiceRestrictInfo-r6		OPTIONAL
}

RadioBearerReconfiguration-v6xyext-IEs ::= SEQUENCE {
	-- User Equipment IEs
		delayRestrictionFlag			DelayRestrictionFlag				OPTIONAL,
	-- Core network IEs
		primary-plmn-Identity			PLMN-Identity						OPTIONAL,
	-- Physical channel IEs
		-- The IE harq-Preamble-Mode should not be used in the r3 and r4 versions of the message
		-- If included in the r3 or r4 version of the message, the UE should ignore the IE
		harq-Preamble-Mode				HARQ-Preamble-Mode					OPTIONAL,
		beaconPLEst						BEACON-PL-Est						OPTIONAL,
		postVerificationPeriod			ENUMERATED { true }					OPTIONAL,
		dhs-sync						DHS-Sync							OPTIONAL,
		timingMaintainedSynchInd		TimingMaintainedSynchInd			OPTIONAL,
	-- MBMS IEs
		mbms-PL-ServiceRestrictInfo		MBMS-PL-ServiceRestrictInfo-r6		OPTIONAL
}

-- ***************************************************
--
-- RADIO BEARER RECONFIGURATION COMPLETE
--
-- ***************************************************

RadioBearerReconfigurationComplete ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		ul-IntegProtActivationInfo		IntegrityProtActivationInfo			OPTIONAL,
		-- TABULAR: UL-TimingAdvance is applicable for TDD mode only.
		ul-TimingAdvance				UL-TimingAdvance					OPTIONAL,
	-- Radio bearer IEs
		count-C-ActivationTime			ActivationTime						OPTIONAL,
		-- dummy is not used in this version of the specification and
		-- it should be ignored by the receiver.
		dummy							RB-ActivationTimeInfoList			OPTIONAL,
		ul-CounterSynchronisationInfo	UL-CounterSynchronisationInfo		OPTIONAL,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			radioBearerReconfigurationComplete-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}	OPTIONAL
		}	OPTIONAL
}

-- ***************************************************
--
-- RADIO BEARER RECONFIGURATION FAILURE
--
-- ***************************************************

RadioBearerReconfigurationFailure ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		failureCause					FailureCauseWithProtErr,
	-- Radio bearer IEs
		potentiallySuccesfulBearerList	RB-IdentityList						OPTIONAL,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			radioBearerReconfigurationFailure-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}	OPTIONAL
		}	OPTIONAL
}

-- ***************************************************
--
-- RADIO BEARER RELEASE
--
-- ***************************************************

RadioBearerRelease ::= CHOICE {
	r3								SEQUENCE {
		radioBearerRelease-r3			RadioBearerRelease-r3-IEs,
		v3a0NonCriticalExtensions		SEQUENCE {
			radioBearerRelease-v3a0ext		RadioBearerRelease-v3a0ext,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			radioBearerRelease-r3-add-ext		BIT STRING		OPTIONAL,
				v4b0NonCriticalExtensions		SEQUENCE {
					radioBearerRelease-v4b0ext		RadioBearerRelease-v4b0ext-IEs,
					v590NonCriticalExtensions		SEQUENCE {
						radioBearerRelease-v590ext		RadioBearerRelease-v590ext-IEs,
						v6xyNonCriticalExtensions		SEQUENCE {
							radioBearerRelease-v6xyext		RadioBearerRelease-v6xyext-IEs,
							nonCriticalExtensions			SEQUENCE {} OPTIONAL
						}		OPTIONAL
					}	OPTIONAL
				}	OPTIONAL
			}	OPTIONAL
		}	OPTIONAL
	},
	later-than-r3					SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				CHOICE {
			r4								SEQUENCE {
				radioBearerRelease-r4			RadioBearerRelease-r4-IEs,
				v4d0NonCriticalExtensions			SEQUENCE {
					-- Container for adding non critical extensions after freezing REL-5
					radioBearerRelease-r4-add-ext		BIT STRING		OPTIONAL,
					v590NonCriticalExtensions		SEQUENCE {
						radioBearerRelease-v590ext		RadioBearerRelease-v590ext-IEs,
						v6xyNonCriticalExtensions		SEQUENCE {
							radioBearerRelease-v6xyext		RadioBearerRelease-v6xyext-IEs,
							nonCriticalExtensions			SEQUENCE {}		OPTIONAL
						}	OPTIONAL
					}	OPTIONAL
				}	OPTIONAL
			},
			criticalExtensions				CHOICE {
				r5								SEQUENCE {
					radioBearerRelease-r5			RadioBearerRelease-r5-IEs,
					-- Container for adding non critical extensions after freezing REL-6
					radioBearerRelease-r5-add-ext	BIT STRING		OPTIONAL,
					v6xyNonCriticalExtensions		SEQUENCE {
						radioBearerRelease-v6xyext		RadioBearerRelease-v6xyext-IEs,
						nonCriticalExtensions			SEQUENCE {}		OPTIONAL
					}	OPTIONAL
				},
				criticalExtensions				CHOICE {
					r6								SEQUENCE {
						radioBearerRelease-r6			RadioBearerRelease-r6-IEs,
						-- Container for adding non critical extensions after freezing REL-7
						radioBearerRelease-r6-add-ext	BIT STRING		OPTIONAL,
						nonCriticalExtensions			SEQUENCE {}		OPTIONAL
					},
					criticalExtensions				SEQUENCE {}
				}
			}
		}
	}
}

RadioBearerRelease-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
	-- Core network IEs
		cn-InformationInfo				CN-InformationInfo					OPTIONAL,
		signallingConnectionRelIndication	CN-DomainIdentity		     	OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Radio bearer IEs
		rab-InformationReconfigList		RAB-InformationReconfigList			OPTIONAL,
		rb-InformationReleaseList		RB-InformationReleaseList,
		rb-InformationAffectedList		RB-InformationAffectedList			OPTIONAL,
		dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo		OPTIONAL,
	-- Transport channel IEs
		ul-CommonTransChInfo			UL-CommonTransChInfo				OPTIONAL,
		ul-deletedTransChInfoList		UL-DeletedTransChInfoList			OPTIONAL,
		ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList			OPTIONAL,
		-- 'dummy', 'dummy1' and 'dummy2' are not used in this version of the specification,
		-- they should not be sent and if received they should be ignored.
		dummy							CHOICE {
			fdd								SEQUENCE {
				dummy1							CPCH-SetID					OPTIONAL,
				dummy2							DRAC-StaticInformationList	OPTIONAL
			},
			tdd								NULL
		}																	OPTIONAL,
		dl-CommonTransChInfo			DL-CommonTransChInfo				OPTIONAL,
		dl-DeletedTransChInfoList		DL-DeletedTransChInfoList			OPTIONAL,
		dl-AddReconfTransChInfoList		DL-AddReconfTransChInfo2List		OPTIONAL,
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-ChannelRequirement			UL-ChannelRequirement				OPTIONAL,
		modeSpecificPhysChInfo			CHOICE {
			fdd								SEQUENCE {
				-- dummy is not used in this version of specification, it should
				-- not be sent and if received it should be ignored.
				dummy							DL-PDSCH-Information		OPTIONAL
			},
			tdd							NULL
		},
		dl-CommonInformation			DL-CommonInformation				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List			OPTIONAL
}

RadioBearerRelease-v3a0ext ::= SEQUENCE {
	-- The IE new-DSCH-RNTI should not be included in FDD mode, and if received the UE behaviour
	-- is unspecified
	new-DSCH-RNTI					DSCH-RNTI							OPTIONAL
}

RadioBearerRelease-v4b0ext-IEs ::= SEQUENCE {
	-- Physical channel IEs
		-- dummy is not used in this version of the specification, it should
		-- not be sent and if received it should be ignored.
		dummy								SSDT-UL								OPTIONAL,
		-- The order of the RLs in IE cell-id-PerRL-List is the same as
		--  in IE DL-InformationPerRL-List included in this message
		cell-id-PerRL-List					CellIdentity-PerRL-List				OPTIONAL
}

RadioBearerRelease-v590ext-IEs ::= SEQUENCE {
	-- Physical channel IEs
		dl-TPC-PowerOffsetPerRL-List	DL-TPC-PowerOffsetPerRL-List		OPTIONAL
}

RadioBearerRelease-r4-IEs ::= SEQUENCE {
	-- User equipment IEs
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		-- The IE new-DSCH-RNTI should not be included in FDD mode, and if received
		-- the UE behaviour is unspecified
		new-DSCH-RNTI					DSCH-RNTI							OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
	-- Core network IEs
		cn-InformationInfo				CN-InformationInfo					OPTIONAL,
		signallingConnectionRelIndication	CN-DomainIdentity				OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Radio bearer IEs
		rab-InformationReconfigList		RAB-InformationReconfigList			OPTIONAL,
		rb-InformationReleaseList		RB-InformationReleaseList,
		rb-InformationAffectedList		RB-InformationAffectedList			OPTIONAL,
		dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo		OPTIONAL,
	-- Transport channel IEs
		ul-CommonTransChInfo			UL-CommonTransChInfo-r4				OPTIONAL,
		ul-deletedTransChInfoList		UL-DeletedTransChInfoList			OPTIONAL,
		ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList			OPTIONAL,
		-- 'dummy', 'dummy1' and 'dummy2' are not used in this version of the specification,
		-- they should not be sent and if received they should be ignored.
		dummy							CHOICE {
			fdd								SEQUENCE {
				dummy1							CPCH-SetID					OPTIONAL,
				dummy2							DRAC-StaticInformationList	OPTIONAL
			},
			tdd								NULL
		}																	OPTIONAL,
		dl-CommonTransChInfo			DL-CommonTransChInfo-r4				OPTIONAL,
		dl-DeletedTransChInfoList		DL-DeletedTransChInfoList			OPTIONAL,
		dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList-r4		OPTIONAL,
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-ChannelRequirement			UL-ChannelRequirement-r4			OPTIONAL,
		modeSpecificPhysChInfo			CHOICE {
			fdd								SEQUENCE {
				-- dummy is not used in this version of specification, it should
				-- not be sent and if received it should be ignored.
				dummy							DL-PDSCH-Information		OPTIONAL
			},
			tdd							NULL
		},
		dl-CommonInformation			DL-CommonInformation-r4				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List-r4			OPTIONAL
}

RadioBearerRelease-r5-IEs ::= SEQUENCE {
	-- User equipment IEs
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		-- The IE new-DSCH-RNTI should not be included in FDD mode,
		-- and if received the UE behaviour is unspecified
		new-DSCH-RNTI					DSCH-RNTI							OPTIONAL,
		new-H-RNTI						H-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
	-- Core network IEs
		cn-InformationInfo				CN-InformationInfo					OPTIONAL,
		signallingConnectionRelIndication	CN-DomainIdentity		     	OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Radio bearer IEs
		rab-InformationReconfigList		RAB-InformationReconfigList			OPTIONAL,
		rb-InformationReleaseList		RB-InformationReleaseList,
		rb-InformationAffectedList		RB-InformationAffectedList-r5		OPTIONAL,
		dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo-r5	OPTIONAL,
	-- Transport channel IEs
		ul-CommonTransChInfo			UL-CommonTransChInfo-r4				OPTIONAL,
		ul-deletedTransChInfoList		UL-DeletedTransChInfoList			OPTIONAL,
		ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList			OPTIONAL,
		-- 'dummy', 'dummy1' and 'dummy2' are not used in this version of the specification,
		-- they should not be sent and if received they should be ignored.
		dummy							CHOICE {
			fdd								SEQUENCE {
				dummy1							CPCH-SetID					OPTIONAL,
				dummy2							DRAC-StaticInformationList	OPTIONAL
			},
			tdd								NULL
		}																	OPTIONAL,
		dl-CommonTransChInfo			DL-CommonTransChInfo-r4				OPTIONAL,
		dl-DeletedTransChInfoList		DL-DeletedTransChInfoList-r5		OPTIONAL,
		dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList-r5		OPTIONAL,
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-ChannelRequirement			UL-ChannelRequirement-r5			OPTIONAL,
		modeSpecificPhysChInfo			CHOICE {
			fdd								SEQUENCE {
				-- dummy is not used in this version of specification, it should
				-- not be sent and if received it should be ignored.
				dummy							DL-PDSCH-Information		OPTIONAL
			},
			tdd							NULL
		},
		dl-HSPDSCH-Information			DL-HSPDSCH-Information				OPTIONAL,
		dl-CommonInformation			DL-CommonInformation-r5				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List-r5			OPTIONAL
}

RadioBearerRelease-v6xyext-IEs ::= SEQUENCE {
	-- Core network IEs
		primary-plmn-Identity			PLMN-Identity						OPTIONAL,
	-- Physical channel IEs
		-- The IE harq-Preamble-Mode should not be used in the r3 and r4 versions of the message
		-- If included in the r3 or r4 version of the message, the UE should ignore the IE
		harq-Preamble-Mode				HARQ-Preamble-Mode					OPTIONAL,
		beaconPLEst						BEACON-PL-Est						OPTIONAL,
		postVerificationPeriod			ENUMERATED { true }					OPTIONAL,
		dhs-sync						DHS-Sync							OPTIONAL,
		timingMaintainedSynchInd		TimingMaintainedSynchInd			OPTIONAL,
	-- MBMS IEs
		mbms-PL-ServiceRestrictInfo		MBMS-PL-ServiceRestrictInfo-r6		OPTIONAL,
		mbms-RB-ListReleasedToChangeTransferMode
										RB-InformationReleaseList			OPTIONAL
}

RadioBearerRelease-r6-IEs ::= SEQUENCE {
	-- User equipment IEs
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		-- The IE new-DSCH-RNTI should not be included in FDD mode,
		-- and if received the UE behaviour is unspecified
		new-DSCH-RNTI					DSCH-RNTI							OPTIONAL,
		new-H-RNTI						H-RNTI								OPTIONAL,
		newPrimary-E-RNTI				E-RNTI								OPTIONAL,
		newSecondary-E-RNTI				E-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
	-- Core network IEs
		cn-InformationInfo				CN-InformationInfo-r6				OPTIONAL,
		signallingConnectionRelIndication	CN-DomainIdentity				OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Radio bearer IEs
		rab-InformationReconfigList		RAB-InformationReconfigList			OPTIONAL,
		rb-InformationReleaseList		RB-InformationReleaseList,
		rb-InformationReconfigList		RB-InformationReconfigList-r6		OPTIONAL,
		rb-InformationAffectedList		RB-InformationAffectedList-r6		OPTIONAL,
		dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo-r5	OPTIONAL,
	-- Transport channel IEs
		ul-CommonTransChInfo			UL-CommonTransChInfo-r4				OPTIONAL,
		ul-deletedTransChInfoList		UL-DeletedTransChInfoList-r6		OPTIONAL,
		ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList-r6		OPTIONAL,
		dl-CommonTransChInfo			DL-CommonTransChInfo-r4				OPTIONAL,
		dl-DeletedTransChInfoList		DL-DeletedTransChInfoList-r5		OPTIONAL,
		dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList-r5		OPTIONAL,
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-DPCH-Info					UL-DPCH-Info-r6						OPTIONAL,
		ul-EDCH-Information				UL-EDCH-Information-r6				OPTIONAL,
		dl-HSPDSCH-Information			DL-HSPDSCH-Information-r6			OPTIONAL,
		dl-CommonInformation			DL-CommonInformation-r6				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List-r6			OPTIONAL,
	-- MBMS IEs
		mbms-PL-ServiceRestrictInfo		MBMS-PL-ServiceRestrictInfo-r6		OPTIONAL,
		mbms-RB-ListReleasedToChangeTransferMode
										RB-InformationReleaseList			OPTIONAL
}

-- ***************************************************
--
-- RADIO BEARER RELEASE COMPLETE
--
-- ***************************************************

RadioBearerReleaseComplete ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		ul-IntegProtActivationInfo		IntegrityProtActivationInfo			OPTIONAL,
		-- TABULAR: UL-TimingAdvance is applicable for TDD mode only.
		ul-TimingAdvance				UL-TimingAdvance					OPTIONAL,
	-- Radio bearer IEs
		count-C-ActivationTime			ActivationTime						OPTIONAL,
		-- dummy is not used in this version of the specification and
		-- it should be ignored by the receiver.
		dummy							RB-ActivationTimeInfoList			OPTIONAL,
		ul-CounterSynchronisationInfo	UL-CounterSynchronisationInfo		OPTIONAL,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			radioBearerReleaseComplete-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		}	OPTIONAL
}

-- ***************************************************
--
-- RADIO BEARER RELEASE FAILURE
--
-- ***************************************************

RadioBearerReleaseFailure ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		failureCause					FailureCauseWithProtErr,
	-- Radio bearer IEs
		potentiallySuccesfulBearerList	RB-IdentityList						OPTIONAL,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			radioBearerReleaseFailure-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		}	OPTIONAL
}

-- ***************************************************
--
-- RADIO BEARER SETUP
--
-- ***************************************************

RadioBearerSetup ::= CHOICE {
	r3								SEQUENCE {
		radioBearerSetup-r3				RadioBearerSetup-r3-IEs,
		v3a0NonCriticalExtensions		SEQUENCE {
			radioBearerSetup-v3a0ext		RadioBearerSetup-v3a0ext,
			laterNonCriticalExtensions		SEQUENCE {
				-- Container for additional R99 extensions
				radioBearerSetup-r3-add-ext		BIT STRING		OPTIONAL,
				v4b0NonCriticalExtensions		SEQUENCE {
					radioBearerSetup-v4b0ext		RadioBearerSetup-v4b0ext-IEs,
					v590NonCriticalExtensions		SEQUENCE {
						radioBearerSetup-v590ext		RadioBearerSetup-v590ext-IEs,
						v5d0NonCriticalExtenstions		SEQUENCE {
							radioBearerSetup-v5d0ext		RadioBearerSetup-v5d0ext-IEs,
							v6xyNonCriticalExtensions		SEQUENCE {
								radioBearerSetup-v6xyext		RadioBearerSetup-v6xyext-IEs,
								nonCriticalExtensions			SEQUENCE {} OPTIONAL
							}	OPTIONAL
						}	OPTIONAL
					}	OPTIONAL
				}	OPTIONAL
			}	OPTIONAL
		}	OPTIONAL
	},
	later-than-r3					SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				CHOICE {
			r4								SEQUENCE {
				radioBearerSetup-r4				RadioBearerSetup-r4-IEs,
				v4d0NonCriticalExtensions			SEQUENCE {
					-- Container for adding non critical extensions after freezing REL-5
					radioBearerSetup-r4-add-ext		BIT STRING		OPTIONAL,
					v590NonCriticalExtensions		SEQUENCE {
						radioBearerSetup-v590ext		RadioBearerSetup-v590ext-IEs,
						v5d0NonCriticalExtenstions		SEQUENCE {
							radioBearerSetup-v5d0ext		RadioBearerSetup-v5d0ext-IEs,
							v6xyNonCriticalExtensions		SEQUENCE {
								radioBearerSetup-v6xyext		RadioBearerSetup-v6xyext-IEs,
								nonCriticalExtensions			SEQUENCE {}		OPTIONAL
							}	OPTIONAL
						}	OPTIONAL
					}	OPTIONAL
				}	OPTIONAL
			},
			criticalExtensions				CHOICE {
				r5								SEQUENCE {
					radioBearerSetup-r5				RadioBearerSetup-r5-IEs,
					-- Container for adding non critical extensions after freezing REL-6
					radioBearerSetup-r5-add-ext		BIT STRING		OPTIONAL,
					v5d0NonCriticalExtenstions		SEQUENCE {
						radioBearerSetup-v5d0ext		RadioBearerSetup-v5d0ext-IEs,
						v6xyNonCriticalExtensions		SEQUENCE {
							radioBearerSetup-v6xyext		RadioBearerSetup-v6xyext-IEs,
							nonCriticalExtensions			SEQUENCE {}		OPTIONAL
						}	OPTIONAL
					}	OPTIONAL
				},
				criticalExtensions				CHOICE {
					r6								SEQUENCE {
						radioBearerSetup-r6				RadioBearerSetup-r6-IEs,
						-- Container for adding non critical extensions after freezing REL-7
						radioBearerSetup-r6-add-ext		BIT STRING		OPTIONAL,
						nonCriticalExtensions			SEQUENCE {}		OPTIONAL
					},
					criticalExtensions				SEQUENCE {}
				}
			}
		}
	}
}

RadioBearerSetup-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Core network IEs
		cn-InformationInfo				CN-InformationInfo					OPTIONAL,
	-- Radio bearer IEs
		srb-InformationSetupList		SRB-InformationSetupList			OPTIONAL,
		rab-InformationSetupList		RAB-InformationSetupList			OPTIONAL,
		rb-InformationAffectedList		RB-InformationAffectedList			OPTIONAL,
		dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo		OPTIONAL,
	-- Transport channel IEs
		ul-CommonTransChInfo			UL-CommonTransChInfo				OPTIONAL,
		ul-deletedTransChInfoList		UL-DeletedTransChInfoList			OPTIONAL,
		ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList			OPTIONAL,
		-- 'dummy', 'dummy1' and 'dummy2' are not used in this version of the specification,
		-- they should not be sent and if received they should be ignored.
		dummy							CHOICE {
			fdd								SEQUENCE {
				dummy1							CPCH-SetID					OPTIONAL,
				dummy2							DRAC-StaticInformationList	OPTIONAL
			},
			tdd								NULL
		}																	OPTIONAL,
		dl-CommonTransChInfo			DL-CommonTransChInfo				OPTIONAL,
		dl-DeletedTransChInfoList		DL-DeletedTransChInfoList			OPTIONAL,
		dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList			OPTIONAL,
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-ChannelRequirement			UL-ChannelRequirement				OPTIONAL,
		modeSpecificPhysChInfo			CHOICE {
			fdd								SEQUENCE {
				-- dummy is not used in this version of specification, it should
				-- not be sent and if received it should be ignored.
				dummy							DL-PDSCH-Information		OPTIONAL
			},
			tdd								NULL
		},
		dl-CommonInformation			DL-CommonInformation				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List			OPTIONAL
}

RadioBearerSetup-v3a0ext ::= SEQUENCE {
	-- The IE new-DSCH-RNTI should not be included in FDD mode, and if received the UE behaviour
	-- is unspecified
	new-DSCH-RNTI					DSCH-RNTI							OPTIONAL
}

RadioBearerSetup-v4b0ext-IEs ::= SEQUENCE {
	-- Physical channel IEs
		-- dummy is not used in this version of the specification, it should
		-- not be sent and if received it should be ignored.
		dummy								SSDT-UL								OPTIONAL,
		-- The order of the RLs in IE cell-id-PerRL-List is the same as
		-- in IE DL-InformationPerRL-List included in this message
		cell-id-PerRL-List					CellIdentity-PerRL-List				OPTIONAL
}

RadioBearerSetup-v590ext-IEs ::= SEQUENCE {
	-- Physical channel IEs
		dl-TPC-PowerOffsetPerRL-List	DL-TPC-PowerOffsetPerRL-List		OPTIONAL
}

RadioBearerSetup-v5d0ext-IEs ::=	SEQUENCE {
	--Radio Bearer IEs
		pdcp-ROHC-TargetMode			PDCP-ROHC-TargetMode				OPTIONAL
}

RadioBearerSetup-r4-IEs ::= SEQUENCE {
	-- User equipment IEs
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		-- The IE new-DSCH-RNTI should not be included in FDD mode, and if received
		-- the UE behaviour is unspecified
		new-DSCH-RNTI					DSCH-RNTI							OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Core network IEs
		cn-InformationInfo				CN-InformationInfo					OPTIONAL,
	-- Radio bearer IEs
		srb-InformationSetupList		SRB-InformationSetupList			OPTIONAL,
		rab-InformationSetupList		RAB-InformationSetupList-r4			OPTIONAL,
		rb-InformationAffectedList		RB-InformationAffectedList			OPTIONAL,
		dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo		OPTIONAL,
	-- Transport channel IEs
		ul-CommonTransChInfo			UL-CommonTransChInfo-r4				OPTIONAL,
		ul-deletedTransChInfoList		UL-DeletedTransChInfoList			OPTIONAL,
		ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList			OPTIONAL,
		-- 'dummy', 'dummy1' and 'dummy2' are not used in this version of the specification,
		-- they should not be sent and if received they should be ignored.
		dummy							CHOICE {
			fdd								SEQUENCE {
				dummy1							CPCH-SetID					OPTIONAL,
				dummy2							DRAC-StaticInformationList	OPTIONAL
			},
			tdd								NULL
		}																	OPTIONAL,
		dl-CommonTransChInfo			DL-CommonTransChInfo-r4				OPTIONAL,
		dl-DeletedTransChInfoList		DL-DeletedTransChInfoList			OPTIONAL,
		dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList-r4		OPTIONAL,
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-ChannelRequirement			UL-ChannelRequirement-r4			OPTIONAL,
		modeSpecificPhysChInfo			CHOICE {
			fdd								SEQUENCE {
				-- dummy is not used in this version of specification, it should
				-- not be sent and if received it should be ignored.
				dummy							DL-PDSCH-Information		OPTIONAL
			},
			tdd								NULL
		},
		dl-CommonInformation			DL-CommonInformation-r4				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List-r4			OPTIONAL
}

RadioBearerSetup-r5-IEs ::= SEQUENCE {
	-- User equipment IEs
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		-- The IE new-DSCH-RNTI should not be included in FDD mode, and if received
		-- the UE behaviour is unspecified
		new-DSCH-RNTI					DSCH-RNTI							OPTIONAL,
		new-H-RNTI						H-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Core network IEs
		cn-InformationInfo				CN-InformationInfo					OPTIONAL,
	-- Radio bearer IEs
		srb-InformationSetupList		SRB-InformationSetupList-r5			OPTIONAL,
		rab-InformationSetupList		RAB-InformationSetupList-r5			OPTIONAL,
		rb-InformationAffectedList		RB-InformationAffectedList-r5		OPTIONAL,
		dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo-r5	OPTIONAL,
	-- Transport channel IEs
		ul-CommonTransChInfo			UL-CommonTransChInfo-r4				OPTIONAL,
		ul-deletedTransChInfoList		UL-DeletedTransChInfoList			OPTIONAL,
		ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList			OPTIONAL,
		-- 'dummy', 'dummy1' and 'dummy2' are not used in this version of the specification,
		-- they should not be sent and if received they should be ignored.
		dummy							CHOICE {
			fdd								SEQUENCE {
				dummy1							CPCH-SetID					OPTIONAL,
				dummy2							DRAC-StaticInformationList	OPTIONAL
			},
			tdd								NULL
		}																	OPTIONAL,
		dl-CommonTransChInfo			DL-CommonTransChInfo-r4				OPTIONAL,
		dl-DeletedTransChInfoList		DL-DeletedTransChInfoList-r5		OPTIONAL,
		dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList-r5		OPTIONAL,
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-ChannelRequirement			UL-ChannelRequirement-r5			OPTIONAL,
		modeSpecificPhysChInfo			CHOICE {
			fdd								SEQUENCE {
				-- dummy is not used in this version of specification, it should
				-- not be sent and if received it should be ignored.
				dummy							DL-PDSCH-Information		OPTIONAL
			},
			tdd								NULL
		},
		dl-HSPDSCH-Information			DL-HSPDSCH-Information				OPTIONAL,
		dl-CommonInformation			DL-CommonInformation-r5				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List-r5			OPTIONAL
}

RadioBearerSetup-v6xyext-IEs ::= SEQUENCE {
	-- Core network IEs
		primary-plmn-Identity			PLMN-Identity						OPTIONAL,
	-- Physical channel IEs
		-- The IE harq-Preamble-Mode should not be used in the r3 and r4 versions of the message
		-- If included in the r3 or r4 version of the message, the UE should ignore the IE
		harq-Preamble-Mode				HARQ-Preamble-Mode					OPTIONAL,
		beaconPLEst						BEACON-PL-Est						OPTIONAL,
		postVerificationPeriod			ENUMERATED { true }					OPTIONAL,
		dhs-sync						DHS-Sync							OPTIONAL,
		timingMaintainedSynchInd		TimingMaintainedSynchInd			OPTIONAL,
	-- Radio bearer IEs
		rab-InformationSetupList		RAB-InformationSetupList-r6-ext		OPTIONAL,
	-- MBMS IEs
		mbms-PL-ServiceRestrictInfo		MBMS-PL-ServiceRestrictInfo-r6		OPTIONAL
}

RadioBearerSetup-r6-IEs ::= SEQUENCE {
	-- User equipment IEs
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		-- The IE new-DSCH-RNTI should not be included in FDD mode,
		-- and if received the UE behaviour is unspecified
		new-DSCH-RNTI					DSCH-RNTI							OPTIONAL,
		new-H-RNTI						H-RNTI								OPTIONAL,
		newPrimary-E-RNTI				E-RNTI								OPTIONAL,
		newSecondary-E-RNTI				E-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Core network IEs
		cn-InformationInfo				CN-InformationInfo-r6				OPTIONAL,
		specificationMode				CHOICE {
			complete						SEQUENCE {
			-- Radio bearer IEs
				srb-InformationSetupList		SRB-InformationSetupList-r6			OPTIONAL,
				rab-InformationSetupList		RAB-InformationSetupList-r6			OPTIONAL,
				rb-InformationReconfigList		RB-InformationReconfigList-r6		OPTIONAL,
				rb-InformationAffectedList		RB-InformationAffectedList-r6		OPTIONAL,
				dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo-r5	OPTIONAL,
				pdcp-ROHC-TargetMode			PDCP-ROHC-TargetMode				OPTIONAL,
			-- Transport channel IEs
				ul-CommonTransChInfo			UL-CommonTransChInfo-r4				OPTIONAL,
				ul-deletedTransChInfoList		UL-DeletedTransChInfoList-r6		OPTIONAL,
				ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList-r6		OPTIONAL,
				dl-CommonTransChInfo			DL-CommonTransChInfo-r4				OPTIONAL,
				dl-DeletedTransChInfoList		DL-DeletedTransChInfoList-r5		OPTIONAL,
				dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList-r5		OPTIONAL
			},
			preconfiguration				SEQUENCE {
				rab-Info						RAB-Info-r6,
				defaultConfigMode				DefaultConfigMode,
				defaultConfigIdentity 			DefaultConfigIdentity-r5,
				rb-InformationChangedList		RB-InformationChangedList-r6		OPTIONAL,
				powerOffsetInfoShort			PowerOffsetInfoShort
			}
		},
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-DPCH-Info					UL-DPCH-Info-r6						OPTIONAL,
		ul-EDCH-Information				UL-EDCH-Information-r6				OPTIONAL,
		dl-HSPDSCH-Information			DL-HSPDSCH-Information-r6			OPTIONAL,
		dl-CommonInformation			DL-CommonInformation-r6				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List-r6			OPTIONAL,
	-- MBMS IEs
		mbms-PL-ServiceRestrictInfo		MBMS-PL-ServiceRestrictInfo-r6		OPTIONAL
}

-- ***************************************************
--
-- RADIO BEARER SETUP COMPLETE
--
-- ***************************************************

RadioBearerSetupComplete ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		ul-IntegProtActivationInfo		IntegrityProtActivationInfo			OPTIONAL,
		-- TABULAR: UL-TimingAdvance is applicable for TDD mode only.
		ul-TimingAdvance				UL-TimingAdvance					OPTIONAL,
		start-Value				START-Value									OPTIONAL,
	-- Radio bearer IEs
		count-C-ActivationTime			ActivationTime						OPTIONAL,
		-- dummy is not used in this version of the specification and
		-- it should be ignored by the receiver.
		dummy							RB-ActivationTimeInfoList			OPTIONAL,
		ul-CounterSynchronisationInfo	UL-CounterSynchronisationInfo		OPTIONAL,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			radioBearerSetupComplete-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		}	OPTIONAL
}

-- ***************************************************
--
-- RADIO BEARER SETUP FAILURE
--
-- ***************************************************

RadioBearerSetupFailure ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		failureCause					FailureCauseWithProtErr,
	-- Radio bearer IEs
		potentiallySuccesfulBearerList	RB-IdentityList						OPTIONAL,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			radioBearerSetupFailure-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		}	OPTIONAL
}

-- ***************************************************
--
-- RRC CONNECTION REJECT
--
-- ***************************************************

RRCConnectionReject ::= CHOICE {
	r3								SEQUENCE {
		rrcConnectionReject-r3			RRCConnectionReject-r3-IEs,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			rrcConnectionReject-r3-add-ext		BIT STRING		OPTIONAL,
			v6xyNonCriticalExtensions			SEQUENCE {
				rrcConnectionReject-v6xyext		RRCConnectionReject-v6xyext-IEs,
				nonCriticalExtensions			SEQUENCE {}		OPTIONAL 
			}	OPTIONAL
		}	OPTIONAL
	},
	later-than-r3					SEQUENCE {
		initialUE-Identity				InitialUE-Identity,
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				SEQUENCE {}
	}
}

RRCConnectionReject-r3-IEs ::= SEQUENCE {
	-- TABULAR: Integrity protection shall not be performed on this message.
	-- User equipment IEs
		initialUE-Identity				InitialUE-Identity,
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		rejectionCause					RejectionCause,
		waitTime						WaitTime,
		redirectionInfo					RedirectionInfo						OPTIONAL
}

RRCConnectionReject-v6xyext-IEs ::= SEQUENCE {
	redirectionInfo-v6xyext				GSM-TargetCellInfoList			OPTIONAL
}

-- ***************************************************
--
-- RRC CONNECTION RELEASE
--
-- ***************************************************

RRCConnectionRelease ::= CHOICE {
	r3								SEQUENCE {
		rrcConnectionRelease-r3			RRCConnectionRelease-r3-IEs,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			rrcConnectionRelease-r3-add-ext		BIT STRING		OPTIONAL,
			v6xyNonCriticalExtensions			SEQUENCE { 
				rrcConnectionRelease-v6xyext	RRCConnectionRelease-v6xyext-IEs,
				nonCriticalExtensions			SEQUENCE {}		OPTIONAL 
			}	OPTIONAL
		}	OPTIONAL
	},
	later-than-r3					SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				CHOICE {
			r4								SEQUENCE {
				rrcConnectionRelease-r4			RRCConnectionRelease-r4-IEs,
				v4d0NonCriticalExtensions			SEQUENCE {
					-- Container for adding non critical extensions after freezing REL-6
					rrcConnectionRelease-r4-add-ext		BIT STRING		OPTIONAL,
					v6xyNonCriticalExtensions			SEQUENCE {
						rrcConnectionRelease-v6xyext
												RRCConnectionRelease-v6xyext-IEs,
						nonCriticalExtensions			SEQUENCE {}		OPTIONAL
					}	OPTIONAL
				}	OPTIONAL
			},
			criticalExtensions				SEQUENCE {}
		}
	}
}

RRCConnectionRelease-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		-- n-308 is conditional on the UE state
		n-308							N-308								OPTIONAL,
		releaseCause					ReleaseCause,
		rplmn-information				Rplmn-Information					OPTIONAL
}

RRCConnectionRelease-r4-IEs ::= SEQUENCE {
	-- User equipment IEs
		-- n-308 is conditional on the UE state.
		n-308							N-308								OPTIONAL,
		releaseCause					ReleaseCause,
		rplmn-information				Rplmn-Information-r4				OPTIONAL
}

RRCConnectionRelease-v6xyext-IEs ::= SEQUENCE {
	redirectionInfo-v6xyext				RedirectionInfo-r6	OPTIONAL
}

-- ***************************************************
--
-- RRC CONNECTION RELEASE for CCCH
--
-- ***************************************************

RRCConnectionRelease-CCCH ::= CHOICE {
	r3								SEQUENCE {
		rrcConnectionRelease-CCCH-r3	RRCConnectionRelease-CCCH-r3-IEs,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			rrcConnectionRelease-CCCH-r3-add-ext		BIT STRING		OPTIONAL,
			v6xyNonCriticalExtensions		SEQUENCE { 
				rrcConnectionRelease-v6xyext	RRCConnectionRelease-CCCH-v6xyext-IEs,
				nonCriticalExtensions			SEQUENCE {}	OPTIONAL
			}	OPTIONAL
		}	OPTIONAL
	},
	later-than-r3					SEQUENCE {
		u-RNTI							U-RNTI,
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				CHOICE {
			r4								SEQUENCE {
				rrcConnectionRelease-CCCH-r4	RRCConnectionRelease-CCCH-r4-IEs,
				v4d0NonCriticalExtensions			SEQUENCE {
					-- Container for adding non critical extensions after freezing REL-5
					rrcConnectionRelease-CCCH-r4-add-ext		BIT STRING		OPTIONAL,
					v6xyNonCriticalExtensions		SEQUENCE { 
						rrcConnectionRelease-v6xyext	RRCConnectionRelease-CCCH-v6xyext-IEs,
						nonCriticalExtensions			SEQUENCE {}		OPTIONAL
					}	OPTIONAL
				}		OPTIONAL
			},
			criticalExtensions				SEQUENCE {
				-- TABULAR: CHOICE IdentityType (U-RNTI, GroupIdentity) is replaced with the 
				-- optional element groupIdentity, since the U-RNTI is mandatory in ASN.1.
				-- In case CHOICE IdentityType is equal to GroupIdentity the value of the U-RNTI 
				-- shall be ignored by a UE complying with this version of the message.
				groupIdentity		SEQUENCE ( SIZE (1 .. maxURNTI-Group) ) OF
											GroupReleaseInformation		OPTIONAL,
				criticalExtensions				CHOICE {
					r5								SEQUENCE {
						rrcConnectionRelease-CCCH-r5	RRCConnectionRelease-CCCH-r5-IEs,
						-- Container for adding non critical extensions after freezing REL-6
						rrcConnectionRelease-CCCH-r5-add-ext		BIT STRING		OPTIONAL,
						v6xyNonCriticalExtensions		SEQUENCE { 
							rrcConnectionRelease-v6xyext	RRCConnectionRelease-CCCH-v6xyext-IEs,
							nonCriticalExtensions			SEQUENCE {}	OPTIONAL
						}	OPTIONAL
					},
					criticalExtensions				SEQUENCE {}
				}
			}
		}
	}
}

RRCConnectionRelease-CCCH-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		u-RNTI							U-RNTI,
	-- The rest of the message is identical to the one sent on DCCH.
		rrcConnectionRelease			RRCConnectionRelease-r3-IEs
}

RRCConnectionRelease-CCCH-r4-IEs ::= SEQUENCE {
	-- The rest of the message is identical to the one sent on DCCH.
		rrcConnectionRelease			RRCConnectionRelease-r4-IEs
}

-- The R5 and R4 sequence of IEs are identical in this message
RRCConnectionRelease-CCCH-r5-IEs ::= RRCConnectionRelease-CCCH-r4-IEs

-- The R6 non-critical extension is identical to the one sent on DCCH.
RRCConnectionRelease-CCCH-v6xyext-IEs ::= RRCConnectionRelease-v6xyext-IEs

-- ***************************************************
--
-- RRC CONNECTION RELEASE COMPLETE
--
-- ***************************************************

RRCConnectionReleaseComplete ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		errorIndication					FailureCauseWithProtErr				OPTIONAL,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			rrcConnectionReleaseComplete-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		}	OPTIONAL
}

-- ***************************************************
--
-- RRC CONNECTION REQUEST
--
-- ***************************************************

RRCConnectionRequest ::= SEQUENCE {
	-- TABULAR: Integrity protection shall not be performed on this message.
	-- User equipment IEs
		initialUE-Identity				InitialUE-Identity,
		establishmentCause				EstablishmentCause,
		-- protocolErrorIndicator is MD, but for compactness reasons no default value
		-- has been assigned to it.
		protocolErrorIndicator			ProtocolErrorIndicator,
	-- Measurement IEs
		measuredResultsOnRACH			MeasuredResultsOnRACH				OPTIONAL,
	--	Non critical Extensions
		v3d0NonCriticalExtensions			SEQUENCE {
			rRCConnectionRequest-v3d0ext 	RRCConnectionRequest-v3d0ext-IEs,
		-- Reserved for future non critical extension
			v4b0NonCriticalExtensions			SEQUENCE {
				rrcConnectionRequest-v4b0ext		RRCConnectionRequest-v4b0ext-IEs,
				v590NonCriticalExtensions			SEQUENCE {
					rrcConnectionRequest-v590ext		RRCConnectionRequest-v590ext-IEs,
					v6xyNonCriticalExtensions			SEQUENCE {
						rrcConnectionRequest-v6xyext	RRCConnectionRequest-v6xyext-IEs,
						-- Reserved for future non critical extension
						nonCriticalExtensions			SEQUENCE {}		OPTIONAL
					}	OPTIONAL
				}	OPTIONAL
			}	OPTIONAL
		} 	OPTIONAL
}

RRCConnectionRequest-v3d0ext-IEs ::= SEQUENCE {
	-- User equipment IEs
		uESpecificBehaviourInformation1idle		UESpecificBehaviourInformation1idle		OPTIONAL
}

RRCConnectionRequest-v4b0ext-IEs ::= 	SEQUENCE {
	-- User equipment IEs
		accessStratumReleaseIndicator			AccessStratumReleaseIndicator
}

RRCConnectionRequest-v590ext-IEs ::= 	SEQUENCE {
	-- User equipment IEs
		predefinedConfigStatusInfo			BOOLEAN
}

RRCConnectionRequest-v6xyext-IEs ::=	SEQUENCE {
	-- User equipment IEs
		ueCapabilityIndication				ENUMERATED { hsdch, hsdch-edch }	OPTIONAL,
	-- Measurement IEs
		measuredResultsOnRACHinterFreq	MeasuredResultsOnRACHinterFreq			OPTIONAL
}

-- ***************************************************
--
-- RRC CONNECTION SETUP
--
-- ***************************************************

RRCConnectionSetup ::= CHOICE {
	r3								SEQUENCE {
		rrcConnectionSetup-r3			RRCConnectionSetup-r3-IEs,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			rrcConnectionSetup-r3-add-ext	BIT STRING		OPTIONAL,
			v4b0NonCriticalExtensions		SEQUENCE { 
				rrcConnectionSetup-v4b0ext		RRCConnectionSetup-v4b0ext-IEs,
				v590NonCriticalExtensions		SEQUENCE { 
					rrcConnectionSetup-v590ext		RRCConnectionSetup-v590ext-IEs,
					v6xyNonCriticalExtensions		SEQUENCE {
						rrcConnectionSetup-v6xyext		RRCConnectionSetup-v6xyext-IEs,
						nonCriticalExtensions			SEQUENCE {}		OPTIONAL
					}	OPTIONAL
				}	OPTIONAL
			}	OPTIONAL
		}	OPTIONAL
	},
	later-than-r3					SEQUENCE {
		initialUE-Identity				InitialUE-Identity,
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				CHOICE {
			r4								SEQUENCE {
				rrcConnectionSetup-r4			RRCConnectionSetup-r4-IEs,
				v4d0NonCriticalExtensions			SEQUENCE {
					-- Container for adding non critical extensions after freezing REL-5
					rrcConnectionSetup-r4-add-ext	BIT STRING		OPTIONAL,
					v590NonCriticalExtensions		SEQUENCE { 
						rrcConnectionSetup-v590ext		RRCConnectionSetup-v590ext-IEs,
						v6xyNonCriticalExtensions		SEQUENCE {
							rrcConnectionSetup-v6xyext		RRCConnectionSetup-v6xyext-IEs,
							nonCriticalExtensions			SEQUENCE {}		OPTIONAL
						}	OPTIONAL
					}	OPTIONAL
				}	OPTIONAL
			},
			criticalExtensions					CHOICE {
				r5								SEQUENCE {
					rrcConnectionSetup-r5			RRCConnectionSetup-r5-IEs,
					-- Container for adding non critical extensions after freezing REL-6
					rrcConnectionSetup-r5-add-ext	BIT STRING		OPTIONAL,
					v6xyNonCriticalExtensions		SEQUENCE {
						rrcConnectionSetup-v6xyext		RRCConnectionSetup-v6xyext-IEs,
						nonCriticalExtensions			SEQUENCE {}		OPTIONAL
					}	OPTIONAL
				},
				criticalExtensions				CHOICE {
					r6								SEQUENCE {
						rrcConnectionSetup-r6			RRCConnectionSetup-r6-IEs,
						-- Container for adding non critical extensions after freezing REL-7
						rrcConnectionSetup-r6-add-ext	BIT STRING					OPTIONAL,
						nonCriticalExtensions			SEQUENCE {}					OPTIONAL
					},
					criticalExtensions				SEQUENCE {}
				}
			}
		}
	}
}

RRCConnectionSetup-r3-IEs ::= SEQUENCE {
	-- TABULAR: Integrity protection shall not be performed on this message.
	-- User equipment IEs
		initialUE-Identity				InitialUE-Identity,
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI,
		new-c-RNTI						C-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient,
		-- TABULAR: If capabilityUpdateRequirement is not present, the default value
		-- defined in 10.3.3.2 shall be used.
		capabilityUpdateRequirement		CapabilityUpdateRequirement			OPTIONAL,
	-- Radio bearer IEs
		srb-InformationSetupList		SRB-InformationSetupList2,
	-- Transport channel IEs
		ul-CommonTransChInfo			UL-CommonTransChInfo				OPTIONAL,
		-- NOTE: ul-AddReconfTransChInfoList should be optional in later versions of
		-- this message
		ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList,
		dl-CommonTransChInfo			DL-CommonTransChInfo				OPTIONAL,
		-- NOTE: dl-AddReconfTransChInfoList should be optional in later versions
		-- of this message
		dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList,
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-ChannelRequirement			UL-ChannelRequirement				OPTIONAL,
		dl-CommonInformation			DL-CommonInformation				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List			OPTIONAL
}

RRCConnectionSetup-v4b0ext-IEs ::= SEQUENCE {
		capabilityUpdateRequirement-r4-ext	CapabilityUpdateRequirement-r4-ext	OPTIONAL,
	-- Physical channel IEs
		-- dummy is not used in this version of the specification, it should
		-- not be sent and if received it should be ignored.
		dummy								SSDT-UL								OPTIONAL,
		-- The order of the RLs in IE cell-id-PerRL-List is the same as
		-- in IE DL-InformationPerRL-List included in this message
		cell-id-PerRL-List					CellIdentity-PerRL-List				OPTIONAL
}

RRCConnectionSetup-v590ext-IEs ::= SEQUENCE {
	-- User equipment IEs
		systemSpecificCapUpdateReq		SystemSpecificCapUpdateReq-v590ext		OPTIONAL,
	-- Physical channel IEs
		dl-TPC-PowerOffsetPerRL-List	DL-TPC-PowerOffsetPerRL-List		OPTIONAL
}

RRCConnectionSetup-r4-IEs ::= SEQUENCE {
	-- TABULAR: Integrity protection shall not be performed on this message.
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI,
		new-c-RNTI						C-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient,
		-- TABULAR: If capabilityUpdateRequirement is not present, the default value
		-- defined in 10.3.3.2 shall be used.
		capabilityUpdateRequirement		CapabilityUpdateRequirement-r4		OPTIONAL,
	-- Radio bearer IEs
		srb-InformationSetupList		SRB-InformationSetupList2,
	-- Transport channel IEs
		ul-CommonTransChInfo			UL-CommonTransChInfo-r4				OPTIONAL,
		ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList			OPTIONAL,
		dl-CommonTransChInfo			DL-CommonTransChInfo-r4				OPTIONAL,
		dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList-r4		OPTIONAL,
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-ChannelRequirement			UL-ChannelRequirement-r4			OPTIONAL,
		dl-CommonInformation			DL-CommonInformation-r4				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List-r4			OPTIONAL
}

RRCConnectionSetup-r5-IEs ::= SEQUENCE {
	-- TABULAR: Integrity protection shall not be performed on this message.
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI,
		new-c-RNTI						C-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient,
		-- TABULAR: If capabilityUpdateRequirement is not present, the default value
		-- defined in 10.3.3.2 shall be used.
		capabilityUpdateRequirement		CapabilityUpdateRequirement-r5		OPTIONAL,
	-- Specification mode information
		specificationMode				CHOICE {
			complete						SEQUENCE {
				-- Radio bearer IEs
				srb-InformationSetupList		SRB-InformationSetupList2,
				-- Transport channel IEs
				ul-CommonTransChInfo			UL-CommonTransChInfo-r4				OPTIONAL,
				ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList			OPTIONAL,
				dl-CommonTransChInfo			DL-CommonTransChInfo-r4				OPTIONAL,
				dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList-r4		OPTIONAL
			},
			preconfiguration				SEQUENCE {
				-- All IEs that include an FDD/TDD choice are split in two IEs for this message,
				-- one for the FDD only elements and one for the TDD only elements, so that one
				-- FDD/TDD choice in this level is sufficient.
				preConfigMode					CHOICE {
					predefinedConfigIdentity		PredefinedConfigIdentity,
					defaultConfig					SEQUENCE {
						defaultConfigMode				DefaultConfigMode,
						defaultConfigIdentity 			DefaultConfigIdentity-r5
					}
				}
			}
		},
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-ChannelRequirement			UL-ChannelRequirement-r4			OPTIONAL,
		dl-CommonInformation			DL-CommonInformation-r4				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List-r5bis		OPTIONAL
}

RRCConnectionSetup-v6xyext-IEs ::= SEQUENCE {
	-- Physical Channel IEs
		beaconPLEst						BEACON-PL-Est						OPTIONAL,
		postVerificationPeriod			ENUMERATED { true }					OPTIONAL
}

RRCConnectionSetup-r6-IEs ::= SEQUENCE {
	-- TABULAR: Integrity protection shall not be performed on this message.
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI,
		new-c-RNTI						C-RNTI								OPTIONAL,
		new-H-RNTI						H-RNTI								OPTIONAL,
		newPrimary-E-RNTI				E-RNTI								OPTIONAL,
		newSecondary-E-RNTI				E-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient,
		-- TABULAR: If capabilityUpdateRequirement is not present, the default value
		-- defined in 10.3.3.2 shall be used.
		capabilityUpdateRequirement		CapabilityUpdateRequirement-r5		OPTIONAL,
	-- Specification mode information
		specificationMode				CHOICE {
			complete						SEQUENCE {
				-- Radio bearer IEs
				srb-InformationSetupList		SRB-InformationSetupList2-r6,
				-- Transport channel IEs
				ul-CommonTransChInfo			UL-CommonTransChInfo-r4				OPTIONAL,
				ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList-r6		OPTIONAL,
				dl-CommonTransChInfo			DL-CommonTransChInfo-r4				OPTIONAL,
				dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList-r5		OPTIONAL
			},
			preconfiguration				SEQUENCE {
				-- All IEs that include an FDD/TDD choice are split in two IEs for this message,
				-- one for the FDD only elements and one for the TDD only elements, so that one
				-- FDD/TDD choice in this level is sufficient.
				preConfigMode					CHOICE {
					predefinedConfigIdentity		PredefinedConfigIdentity,
					defaultConfig					SEQUENCE {
						defaultConfigMode				DefaultConfigMode,
						defaultConfigIdentity 			DefaultConfigIdentity-r5
					}
				}
			}
		},
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-DPCH-Info					UL-DPCH-Info-r6						OPTIONAL,
		ul-EDCH-Information				UL-EDCH-Information-r6				OPTIONAL,
		dl-HSPDSCH-Information			DL-HSPDSCH-Information-r6			OPTIONAL,
		dl-CommonInformation			DL-CommonInformation-r6				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List-r6			OPTIONAL
}

-- ***************************************************
--
-- RRC CONNECTION SETUP COMPLETE
--
-- ***************************************************

RRCConnectionSetupComplete ::= SEQUENCE {
	-- TABULAR: Integrity protection shall not be performed on this message.
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		startList						STARTList,
		ue-RadioAccessCapability		UE-RadioAccessCapability			OPTIONAL,
	--	Other IEs
		ue-RATSpecificCapability		InterRAT-UE-RadioAccessCapabilityList	OPTIONAL,
	-- Non critical extensions
		v370NonCriticalExtensions			SEQUENCE {
			rrcConnectionSetupComplete-v370ext	RRCConnectionSetupComplete-v370ext,
			v380NonCriticalExtensions			SEQUENCE {
				rrcConnectionSetupComplete-v380ext	RRCConnectionSetupComplete-v380ext-IEs,
				-- Reserved for future non critical extension
				v3a0NonCriticalExtensions			SEQUENCE {
					rrcConnectionSetupComplete-v3a0ext	RRCConnectionSetupComplete-v3a0ext-IEs,
					laterNonCriticalExtensions			SEQUENCE {
						-- Container for additional R99 extensions
						rrcConnectionSetupComplete-r3-add-ext		BIT STRING
								(CONTAINING RRCConnectionSetupComplete-r3-add-ext-IEs)	OPTIONAL,
						v3g0NonCriticalExtensions			SEQUENCE {
							rrcConnectionSetupComplete-v3g0ext	RRCConnectionSetupComplete-v3g0ext-IEs,
							v4b0NonCriticalExtensions			SEQUENCE {
								rrcConnectionSetupComplete-v4b0ext
																RRCConnectionSetupComplete-v4b0ext-IEs,
								v590NonCriticalExtensions			SEQUENCE {
									rrcConnectionSetupComplete-v590ext
																RRCConnectionSetupComplete-v590ext-IEs,
									v5c0NonCriticalExtensions			SEQUENCE {
										rrcConnectionSetupComplete-v5c0ext
																RRCConnectionSetupComplete-v5c0ext-IEs,
										v6xyNonCriticalExtensions			SEQUENCE {
											rrcConnectionSetupComplete-v6xyext
																RRCConnectionSetupComplete-v6xyext-IEs,
											nonCriticalExtensions				SEQUENCE {}		OPTIONAL
										}		OPTIONAL
									}		OPTIONAL
								}		OPTIONAL
							}		OPTIONAL
						}		OPTIONAL
					}		OPTIONAL
				}		OPTIONAL
			}		OPTIONAL
		}		OPTIONAL
}

RRCConnectionSetupComplete-v370ext ::= SEQUENCE {
	-- User equipment IEs
		ue-RadioAccessCapability-v370ext	UE-RadioAccessCapability-v370ext	OPTIONAL
}

RRCConnectionSetupComplete-v380ext-IEs ::= SEQUENCE {
	-- User equipment IEs
		ue-RadioAccessCapability-v380ext	UE-RadioAccessCapability-v380ext		OPTIONAL,
		dl-PhysChCapabilityFDD-v380ext		DL-PhysChCapabilityFDD-v380ext
}

RRCConnectionSetupComplete-v3a0ext-IEs ::= SEQUENCE {
	-- User equipment IEs
		ue-RadioAccessCapability-v3a0ext	UE-RadioAccessCapability-v3a0ext	OPTIONAL
}

RRCConnectionSetupComplete-v3g0ext-IEs ::= SEQUENCE {
	-- User equipment IEs
		ue-RadioAccessCapability-v3g0ext	UE-RadioAccessCapability-v3g0ext	OPTIONAL
}

RRCConnectionSetupComplete-r3-add-ext-IEs ::= SEQUENCE {
		rrcConnectionSetupComplete-v650ext		RRCConnectionSetupComplete-v650ext-IEs	OPTIONAL,
		v680NonCriticalExtensions				SEQUENCE {
			rrcConnectionSetupComplete-v680ext		RRCConnectionSetupComplete-v680ext-IEs,
			nonCriticalExtensions					SEQUENCE {}		OPTIONAL
		}		OPTIONAL
}

RRCConnectionSetupComplete-v4b0ext-IEs ::= SEQUENCE {
	-- User equipment IEs
		ue-RadioAccessCapability-v4b0ext		UE-RadioAccessCapability-v4b0ext		OPTIONAL
}

RRCConnectionSetupComplete-v590ext-IEs ::= SEQUENCE {
	-- User equipment IEs
		ue-RadioAccessCapability-v590ext		UE-RadioAccessCapability-v590ext		OPTIONAL,
	-- Other IEs
		ue-RATSpecificCapability-v590ext		InterRAT-UE-RadioAccessCapability-v590ext	OPTIONAL
}

RRCConnectionSetupComplete-v5c0ext-IEs ::= SEQUENCE {
	-- User equipment IEs
		ue-RadioAccessCapability-v5c0ext		UE-RadioAccessCapability-v5c0ext		OPTIONAL
}

RRCConnectionSetupComplete-v650ext-IEs ::= SEQUENCE {
	-- User equipment IEs
		ue-RadioAccessCapability-v650ext		UE-RadioAccessCapability-v650ext
}

RRCConnectionSetupComplete-v680ext-IEs ::= SEQUENCE {
	-- User equipment IEs
		ue-RadioAccessCapability-v680ext		UE-RadioAccessCapability-v680ext
}

RRCConnectionSetupComplete-v6xyext-IEs ::= SEQUENCE {
	-- User equipment IEs
		ueCapabilityContainer				BIT STRING
												(CONTAINING UE-CapabilityContainer-IEs)	OPTIONAL
}

-- ***************************************************
--
-- RRC FAILURE INFO
--
-- ***************************************************

RRC-FailureInfo ::= CHOICE {
	r3											SEQUENCE {
		rRC-FailureInfo-r3							RRC-FailureInfo-r3-IEs,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			rrc-FailureInfo-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions						SEQUENCE {}	OPTIONAL
		}	OPTIONAL
	},
	criticalExtensions							SEQUENCE {}
}

RRC-FailureInfo-r3-IEs ::=		SEQUENCE {
	-- Non-RRC IEs
		failureCauseWithProtErr							FailureCauseWithProtErr
}

-- ***************************************************
--
-- RRC STATUS
--
-- ***************************************************

RRCStatus ::= SEQUENCE {
	-- Other IEs
		-- TABULAR: Identification of received message is nested in
		-- ProtocolErrorMoreInformation
		protocolErrorInformation		ProtocolErrorMoreInformation,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			rrcStatus-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		}	OPTIONAL
}

-- ***************************************************
--
-- SECURITY MODE COMMAND
--
-- ***************************************************

SecurityModeCommand ::= CHOICE {
	r3								SEQUENCE {
		securityModeCommand-r3			SecurityModeCommand-r3-IEs,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			securityModeCommand-r3-add-ext		BIT STRING		OPTIONAL,
			v6xyNonCriticalExtensions		SEQUENCE {
				securityModeCommand-v6xyext		SecurityModeCommand-v6xyext-IEs,
				nonCriticalExtensions			SEQUENCE {}		OPTIONAL
			}	OPTIONAL
		}	OPTIONAL
	},
	later-than-r3					SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				SEQUENCE {}
	}
}

SecurityModeCommand-r3-IEs ::= SEQUENCE {
-- TABULAR: Integrity protection shall always be performed on this message.
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		securityCapability				SecurityCapability,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
	-- Core network IEs
		cn-DomainIdentity				CN-DomainIdentity,
	-- Other IEs
		ue-SystemSpecificSecurityCap	InterRAT-UE-SecurityCapList			OPTIONAL
}

SecurityModeCommand-v6xyext-IEs ::=	SEQUENCE {
	-- Other IEs
		gsmSecurityCapability-v6xyext	GSMSecurityCapability-v6xyext		OPTIONAL
}

-- ***************************************************
--
-- SECURITY MODE COMPLETE
--
-- ***************************************************

SecurityModeComplete ::= SEQUENCE {
-- TABULAR: Integrity protection shall always be performed on this message.

	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		ul-IntegProtActivationInfo		IntegrityProtActivationInfo			OPTIONAL,
	-- Radio bearer IEs
		rb-UL-CiphActivationTimeInfo	RB-ActivationTimeInfoList			OPTIONAL,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			securityModeComplete-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		}	OPTIONAL
}

-- ***************************************************
--
-- SECURITY MODE FAILURE
--
-- ***************************************************

SecurityModeFailure ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		failureCause					FailureCauseWithProtErr,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			securityModeFailure-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		}	OPTIONAL
}

-- ***************************************************
--
-- SIGNALLING CONNECTION RELEASE
--
-- ***************************************************

SignallingConnectionRelease ::= CHOICE {
	r3								SEQUENCE {
		signallingConnectionRelease-r3	SignallingConnectionRelease-r3-IEs,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			signallingConnectionRelease-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		}	OPTIONAL
	},
	later-than-r3					SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				SEQUENCE {}
	}
}

SignallingConnectionRelease-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
	-- Core network IEs
		cn-DomainIdentity				CN-DomainIdentity
}

-- ***************************************************
--
-- SIGNALLING CONNECTION RELEASE INDICATION
--
-- ***************************************************

SignallingConnectionReleaseIndication ::= SEQUENCE {
	-- Core network IEs
		cn-DomainIdentity				CN-DomainIdentity,
		laterNonCriticalExtensions		SEQUENCE {
			-- Container for additional R99 extensions
			signallingConnectionReleaseIndication-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		}	OPTIONAL
}

-- ***************************************************
--
-- SYSTEM INFORMATION for BCH
--
-- ***************************************************

SystemInformation-BCH ::= SEQUENCE {
	-- Other information elements
		sfn-Prime						SFN-Prime,
		payload 						CHOICE {
			noSegment						NULL,
			firstSegment					FirstSegment,
			subsequentSegment				SubsequentSegment,
			lastSegmentShort						LastSegmentShort,
			lastAndFirst					SEQUENCE {
				lastSegmentShort				LastSegmentShort,
				firstSegment					FirstSegmentShort
			},
			lastAndComplete					SEQUENCE {
				lastSegmentShort				LastSegmentShort,
				completeSIB-List				CompleteSIB-List
			},
			lastAndCompleteAndFirst			SEQUENCE {
				lastSegmentShort				LastSegmentShort,
				completeSIB-List				CompleteSIB-List,
				firstSegment					FirstSegmentShort
			},
			completeSIB-List				CompleteSIB-List,
			completeAndFirst				SEQUENCE {
				completeSIB-List				CompleteSIB-List,
				firstSegment					FirstSegmentShort
			},
			completeSIB						CompleteSIB,
			lastSegment						LastSegment,
			spare5							NULL,
			spare4							NULL,
			spare3							NULL,
			spare2							NULL,
			spare1							NULL
		}
}

-- ***************************************************
--
-- SYSTEM INFORMATION for FACH
--
-- ***************************************************

SystemInformation-FACH ::= SEQUENCE {
	-- Other information elements
		payload 						CHOICE {
			noSegment						NULL,
			firstSegment					FirstSegment,
			subsequentSegment				SubsequentSegment,
			lastSegmentShort				LastSegmentShort,
			lastAndFirst					SEQUENCE {
				lastSegmentShort				LastSegmentShort,
				firstSegment					FirstSegmentShort
			},
			lastAndComplete					SEQUENCE {
				lastSegmentShort				LastSegmentShort,
				completeSIB-List				CompleteSIB-List
			},
			lastAndCompleteAndFirst			SEQUENCE {
				lastSegmentShort				LastSegmentShort,
				completeSIB-List				CompleteSIB-List,
				firstSegment					FirstSegmentShort
			},
			completeSIB-List				CompleteSIB-List,
			completeAndFirst				SEQUENCE {
				completeSIB-List				CompleteSIB-List,
				firstSegment					FirstSegmentShort
			},
			completeSIB						CompleteSIB,
			lastSegment						LastSegment,
			spare5							NULL,
			spare4							NULL,
			spare3							NULL,
			spare2							NULL,
			spare1							NULL
		}
}

-- ***************************************************
--
-- First segment
--
-- ***************************************************

FirstSegment ::=					SEQUENCE {
	-- Other information elements
		sib-Type						SIB-Type,
		seg-Count						SegCount,
		sib-Data-fixed					SIB-Data-fixed
}

-- ***************************************************
--
-- First segment (short)
--
-- ***************************************************

FirstSegmentShort ::=				SEQUENCE {
	-- Other information elements
		sib-Type						SIB-Type,
		seg-Count						SegCount,
		sib-Data-variable				SIB-Data-variable
}

-- ***************************************************
--
-- Subsequent segment
--
-- ***************************************************

SubsequentSegment ::=				SEQUENCE {
	-- Other information elements
		sib-Type						SIB-Type,
		segmentIndex					SegmentIndex,
		sib-Data-fixed					SIB-Data-fixed
}

-- ***************************************************
--
-- Last segment
--
-- ***************************************************

LastSegment ::=						SEQUENCE {
	-- Other information elements
		sib-Type						SIB-Type,
		segmentIndex					SegmentIndex,
		-- For sib-Data-fixed, in case the SIB data is less than 222 bits, padding
		-- shall be used. The same padding bits shall be used as defined in clause 12.1
		sib-Data-fixed					SIB-Data-fixed
}

LastSegmentShort ::=						SEQUENCE {
	-- Other information elements
		sib-Type						SIB-Type,
		segmentIndex					SegmentIndex,
		sib-Data-variable				SIB-Data-variable
}

-- ***************************************************
--
-- Complete SIB
--
-- ***************************************************

CompleteSIB-List ::=				SEQUENCE (SIZE (1..maxSIBperMsg)) OF
										CompleteSIBshort

CompleteSIB ::=						SEQUENCE {
	-- Other information elements
		sib-Type						SIB-Type,
		-- For sib-Data-fixed, in case the SIB data is less than 226 bits, padding
		-- shall be used. The same padding bits shall be used as defined in clause 12.1
		sib-Data-fixed					BIT STRING (SIZE (226))
}

CompleteSIBshort ::=						SEQUENCE {
	-- Other information elements
		sib-Type						SIB-Type,
		sib-Data-variable				SIB-Data-variable
}

-- ***************************************************
--
-- SYSTEM INFORMATION CHANGE INDICATION
--
-- ***************************************************

SystemInformationChangeIndication ::= 	SEQUENCE {
	-- Other IEs
		bcch-ModificationInfo				BCCH-ModificationInfo,
		laterNonCriticalExtensions			SEQUENCE {
			-- Container for additional R99 extensions
			systemInformationChangeIndication-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		}	OPTIONAL
}
 
-- ***************************************************
--
-- TRANSPORT CHANNEL RECONFIGURATION
--
-- ***************************************************

TransportChannelReconfiguration ::= CHOICE {
	r3								SEQUENCE {
		transportChannelReconfiguration-r3
										TransportChannelReconfiguration-r3-IEs,
		v3a0NonCriticalExtensions		SEQUENCE {
			transportChannelReconfiguration-v3a0ext
											TransportChannelReconfiguration-v3a0ext,
			laterNonCriticalExtensions			SEQUENCE {
				-- Container for additional R99 extensions
				transportChannelReconfiguration-r3-add-ext		BIT STRING		OPTIONAL,
				v4b0NonCriticalExtensions		SEQUENCE {
					transportChannelReconfiguration-v4b0ext	
													TransportChannelReconfiguration-v4b0ext-IEs,
					v590NonCriticalExtensions		SEQUENCE {
						transportChannelReconfiguration-v590ext	
														TransportChannelReconfiguration-v590ext-IEs,
						v6xyNonCriticalExtensions		SEQUENCE {
							transportChannelReconfiguration-v6xyext	
														TransportChannelReconfiguration-v6xyext-IEs,
							nonCriticalExtensions			SEQUENCE {}		OPTIONAL
						}		OPTIONAL
					}		OPTIONAL
				}		OPTIONAL
			}		OPTIONAL
		}		OPTIONAL
	},
	later-than-r3					SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				CHOICE {
			r4								SEQUENCE {
				transportChannelReconfiguration-r4
												TransportChannelReconfiguration-r4-IEs,
				v4d0NonCriticalExtensions			SEQUENCE {
					-- Container for adding non critical extensions after freezing REL-5
					transportChannelReconfiguration-r4-add-ext		BIT STRING		OPTIONAL,
					v590NonCriticalExtensions		SEQUENCE {
						transportChannelReconfiguration-v590ext	
													TransportChannelReconfiguration-v590ext-IEs,
						v6xyNonCriticalExtensions		SEQUENCE {
							transportChannelReconfiguration-v6xyext	
														TransportChannelReconfiguration-v6xyext-IEs,
							nonCriticalExtensions			SEQUENCE {}		OPTIONAL
						}	OPTIONAL
					}	OPTIONAL
				}	OPTIONAL
			},
			criticalExtensions				CHOICE {
				r5								SEQUENCE {
					transportChannelReconfiguration-r5
													TransportChannelReconfiguration-r5-IEs,
					-- Container for adding non critical extensions after freezing REL-6
					transportChannelReconfiguration-r5-add-ext		BIT STRING		OPTIONAL,
					v6xyNonCriticalExtensions		SEQUENCE {
						transportChannelReconfiguration-v6xyext	
														TransportChannelReconfiguration-v6xyext-IEs,
						nonCriticalExtensions			SEQUENCE {}		OPTIONAL
					}	OPTIONAL
				},
				criticalExtensions				CHOICE {
					r6								SEQUENCE {
						transportChannelReconfiguration-r6
														TransportChannelReconfiguration-r6-IEs,
						-- Container for adding non critical extensions after freezing REL-7
						transportChannelReconfiguration-r6-add-ext		BIT STRING		OPTIONAL,
						nonCriticalExtensions			SEQUENCE {}		OPTIONAL
					},
					criticalExtensions				SEQUENCE {}
				}
			}
		}
	}
}

TransportChannelReconfiguration-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
	-- Core network IEs
		cn-InformationInfo				CN-InformationInfo					OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Radio bearer IEs
		dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo		OPTIONAL,
	-- Transport channel IEs
		ul-CommonTransChInfo			UL-CommonTransChInfo				OPTIONAL,
		ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList			OPTIONAL,
		-- 'dummy', 'dummy1' and 'dummy2' are not used in this version of the specification,
		-- they should not be sent and if received they should be ignored.
		dummy							CHOICE {
			fdd								SEQUENCE {
				dummy1							CPCH-SetID					OPTIONAL,
				dummy2							DRAC-StaticInformationList	OPTIONAL
			},
			tdd								NULL
		}																	OPTIONAL,
		dl-CommonTransChInfo			DL-CommonTransChInfo				OPTIONAL,
		dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList			OPTIONAL,
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-ChannelRequirement			UL-ChannelRequirement				OPTIONAL,
		modeSpecificPhysChInfo			CHOICE {
			fdd								SEQUENCE {
				-- dummy is not used in this version of specification, it should
				-- not be sent and if received it should be ignored.
				dummy							DL-PDSCH-Information		OPTIONAL
			},
			tdd							NULL
		},
		dl-CommonInformation			DL-CommonInformation				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List			OPTIONAL
}

TransportChannelReconfiguration-v3a0ext ::= SEQUENCE {
	-- The IE new-DSCH-RNTI should not be included in FDD mode, and if received
	-- the UE behaviour is unspecified
	new-DSCH-RNTI					DSCH-RNTI							OPTIONAL
}

TransportChannelReconfiguration-v4b0ext-IEs ::= SEQUENCE {
	-- Physical channel IEs
		-- dummy is not used in this version of the specification, it should
		-- not be sent and if received it should be ignored.
		dummy								SSDT-UL								OPTIONAL,
		-- The order of the RLs in IE cell-id-PerRL-List is the same as
		-- in IE DL-InformationPerRL-List included in this message
		cell-id-PerRL-List					CellIdentity-PerRL-List				OPTIONAL
}

TransportChannelReconfiguration-v590ext-IEs ::= SEQUENCE {
	-- Physical channel IEs
		dl-TPC-PowerOffsetPerRL-List	DL-TPC-PowerOffsetPerRL-List		OPTIONAL
}

TransportChannelReconfiguration-r4-IEs ::= SEQUENCE {
	-- User equipment IEs
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		-- The IE new-DSCH-RNTI should not be included in FDD mode, and if received
		-- the UE behaviour is unspecified
		new-DSCH-RNTI					DSCH-RNTI							OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
	-- Core network IEs
		cn-InformationInfo				CN-InformationInfo					OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Radio bearer IEs
		dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo		OPTIONAL,
	-- Transport channel IEs
		ul-CommonTransChInfo			UL-CommonTransChInfo-r4				OPTIONAL,
		ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList			OPTIONAL,
		-- 'dummy', 'dummy1' and 'dummy2' are not used in this version of the specification,
		-- they should not be sent and if received they should be ignored.
		dummy							CHOICE {
			fdd								SEQUENCE {
				dummy1							CPCH-SetID					OPTIONAL,
				dummy2							DRAC-StaticInformationList	OPTIONAL
			},
			tdd								NULL
		}																	OPTIONAL,
		dl-CommonTransChInfo			DL-CommonTransChInfo-r4				OPTIONAL,
		dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList-r4		OPTIONAL,
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-ChannelRequirement			UL-ChannelRequirement-r4			OPTIONAL,
		modeSpecificPhysChInfo			CHOICE {
			fdd								SEQUENCE {
				-- dummy is not used in this version of specification, it should
				-- not be sent and if received it should be ignored.
				dummy							DL-PDSCH-Information		OPTIONAL
			},
			tdd							NULL
		},
		dl-CommonInformation			DL-CommonInformation-r4				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List-r4			OPTIONAL
}

TransportChannelReconfiguration-r5-IEs ::= SEQUENCE {
	-- User equipment IEs
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		-- The IE new-DSCH-RNTI should not be included in FDD mode, and if received
		-- the UE behaviour is unspecified
		new-DSCH-RNTI					DSCH-RNTI							OPTIONAL,
		new-H-RNTI						H-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
	-- Core network IEs
		cn-InformationInfo				CN-InformationInfo					OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Radio bearer IEs
		dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo-r5	OPTIONAL,
	-- Transport channel IEs
		ul-CommonTransChInfo			UL-CommonTransChInfo-r4				OPTIONAL,
		ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList			OPTIONAL,
		-- 'dummy', 'dummy1' and 'dummy2' are not used in this version of the specification,
		-- they should not be sent and if received they should be ignored.
		dummy							CHOICE {
			fdd								SEQUENCE {
				dummy1							CPCH-SetID					OPTIONAL,
				dummy2							DRAC-StaticInformationList	OPTIONAL
			},
			tdd								NULL
		}																	OPTIONAL,
		dl-CommonTransChInfo			DL-CommonTransChInfo-r4				OPTIONAL,
		dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList-r5		OPTIONAL,
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-ChannelRequirement			UL-ChannelRequirement-r5			OPTIONAL,
		modeSpecificPhysChInfo			CHOICE {
			fdd								SEQUENCE {
				-- dummy is not used in this version of specification, it should
				-- not be sent and if received it should be ignored.
				dummy							DL-PDSCH-Information		OPTIONAL
			},
			tdd							NULL
		},
		dl-HSPDSCH-Information			DL-HSPDSCH-Information				OPTIONAL,
		dl-CommonInformation			DL-CommonInformation-r5				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List-r5			OPTIONAL
}

TransportChannelReconfiguration-v6xyext-IEs ::= SEQUENCE {
	-- User Equipment IEs
		delayRestrictionFlag			DelayRestrictionFlag				OPTIONAL,
	-- Core network IEs
		primary-plmn-Identity			PLMN-Identity						OPTIONAL,
	-- Physical channel IEs
		-- The IE harq-Preamble-Mode should not be used in the r3 and r4 versions of the message
		-- If included in the r3 or r4 version of the message, the UE should ignore the IE
		harq-Preamble-Mode				HARQ-Preamble-Mode					OPTIONAL,
		beaconPLEst						BEACON-PL-Est						OPTIONAL,
		postVerificationPeriod			ENUMERATED { true }					OPTIONAL,
		dhs-sync						DHS-Sync							OPTIONAL,
		timingMaintainedSynchInd		TimingMaintainedSynchInd			OPTIONAL,
	-- MBMS IEs
		mbms-PL-ServiceRestrictInfo		MBMS-PL-ServiceRestrictInfo-r6		OPTIONAL
}

TransportChannelReconfiguration-r6-IEs ::= SEQUENCE {
	-- User equipment IEs
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		activationTime					ActivationTime						OPTIONAL,
		delayRestrictionFlag			DelayRestrictionFlag				OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		-- The IE new-DSCH-RNTI should not be included in FDD mode,
		-- and if received the UE behaviour is unspecified
		new-DSCH-RNTI					DSCH-RNTI							OPTIONAL,
		new-H-RNTI						H-RNTI								OPTIONAL,
		newPrimary-E-RNTI				E-RNTI								OPTIONAL,
		newSecondary-E-RNTI				E-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
	-- Core network IEs
		cn-InformationInfo				CN-InformationInfo-r6				OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Radio bearer IEs
		dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo-r5	OPTIONAL,
	-- Transport channel IEs
		ul-CommonTransChInfo			UL-CommonTransChInfo-r4				OPTIONAL,
		ul-AddReconfTransChInfoList		UL-AddReconfTransChInfoList-r6		OPTIONAL,
		dl-CommonTransChInfo			DL-CommonTransChInfo-r4				OPTIONAL,
		dl-AddReconfTransChInfoList		DL-AddReconfTransChInfoList-r5		OPTIONAL,
	-- Physical channel IEs
		frequencyInfo					FrequencyInfo						OPTIONAL,
		maxAllowedUL-TX-Power			MaxAllowedUL-TX-Power				OPTIONAL,
		ul-DPCH-Info					UL-DPCH-Info-r6						OPTIONAL,
		ul-EDCH-Information				UL-EDCH-Information-r6				OPTIONAL,
		dl-HSPDSCH-Information			DL-HSPDSCH-Information-r6			OPTIONAL,
		dl-CommonInformation			DL-CommonInformation-r6				OPTIONAL,
		dl-InformationPerRL-List		DL-InformationPerRL-List-r6			OPTIONAL,
	-- MBMS IEs
		mbms-PL-ServiceRestrictInfo		MBMS-PL-ServiceRestrictInfo-r6		OPTIONAL
}

-- ***************************************************
--
-- TRANSPORT CHANNEL RECONFIGURATION COMPLETE
--
-- ***************************************************

TransportChannelReconfigurationComplete ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		ul-IntegProtActivationInfo		IntegrityProtActivationInfo			OPTIONAL,
		-- TABULAR: UL-TimingAdvance is applicable for TDD mode only.
		ul-TimingAdvance				UL-TimingAdvance					OPTIONAL,
	-- Radio bearer IEs
		count-C-ActivationTime			ActivationTime						OPTIONAL,
		-- dummy is not used in this version of the specification and
		-- it should be ignored by the receiver.
		dummy							RB-ActivationTimeInfoList			OPTIONAL,
		ul-CounterSynchronisationInfo	UL-CounterSynchronisationInfo		OPTIONAL,
		laterNonCriticalExtensions			SEQUENCE {
			-- Container for additional R99 extensions
			transportChannelReconfigurationComplete-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		}	OPTIONAL
}

-- ***************************************************
--
-- TRANSPORT CHANNEL RECONFIGURATION FAILURE
--
-- ***************************************************

TransportChannelReconfigurationFailure ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		failureCause					FailureCauseWithProtErr,
		laterNonCriticalExtensions			SEQUENCE {
			-- Container for additional R99 extensions
			transportChannelReconfigurationFailure-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		}	OPTIONAL
}

-- *********************************************************
--
-- TRANSPORT FORMAT COMBINATION CONTROL in AM or UM RLC mode
--
-- *********************************************************

TransportFormatCombinationControl ::= SEQUENCE {
		-- rrc-TransactionIdentifier is always included in this version of the specification
		rrc-TransactionIdentifier		RRC-TransactionIdentifier			OPTIONAL,
		modeSpecificInfo					CHOICE {
			fdd									NULL,
			tdd									SEQUENCE {
				tfcs-ID								TFCS-Identity	OPTIONAL
			}	
		},
		dpch-TFCS-InUplink					TFC-Subset,
		activationTimeForTFCSubset			ActivationTime						OPTIONAL,
		tfc-ControlDuration					TFC-ControlDuration					OPTIONAL,
		laterNonCriticalExtensions			SEQUENCE {
			-- Container for additional R99 extensions
			transportFormatCombinationControl-r3-add-ext		BIT STRING		OPTIONAL,
				nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		}	OPTIONAL
}

-- ***************************************************
--
-- TRANSPORT FORMAT COMBINATION CONTROL FAILURE
--
-- ***************************************************

TransportFormatCombinationControlFailure ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		failureCause					FailureCauseWithProtErr,
		laterNonCriticalExtensions			SEQUENCE {
			-- Container for additional R99 extensions
			transportFormatCombinationControlFailure-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		}	OPTIONAL
}

-- ***************************************************
--
-- UE CAPABILITY ENQUIRY
--
-- ***************************************************

UECapabilityEnquiry ::= CHOICE {
	r3								SEQUENCE {
		ueCapabilityEnquiry-r3			UECapabilityEnquiry-r3-IEs,
		laterNonCriticalExtensions			SEQUENCE {
			-- Container for additional R99 extensions
			ueCapabilityEnquiry-r3-add-ext		BIT STRING		OPTIONAL,
			v4b0NonCriticalExtensions		SEQUENCE { 
				ueCapabilityEnquiry-v4b0ext		UECapabilityEnquiry-v4b0ext-IEs,
				v590NonCriticalExtensions			SEQUENCE {
					ueCapabilityEnquiry-v590ext		UECapabilityEnquiry-v590ext-IEs,
					nonCriticalExtensions			SEQUENCE {}		OPTIONAL
				}						OPTIONAL
			}		OPTIONAL
		}	OPTIONAL
	},
	later-than-r3					SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				SEQUENCE {}
	}
}

UECapabilityEnquiry-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		capabilityUpdateRequirement		CapabilityUpdateRequirement
}

UECapabilityEnquiry-v4b0ext-IEs ::= SEQUENCE {
		capabilityUpdateRequirement-r4-ext	CapabilityUpdateRequirement-r4-ext
}

UECapabilityEnquiry-v590ext-IEs ::= SEQUENCE {
		systemSpecificCapUpdateReq		SystemSpecificCapUpdateReq-v590ext
}

-- ***************************************************
--
-- UE CAPABILITY INFORMATION
--
-- ***************************************************

UECapabilityInformation ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier			OPTIONAL,
		ue-RadioAccessCapability		UE-RadioAccessCapability			OPTIONAL,
	-- Other IEs
		ue-RATSpecificCapability		InterRAT-UE-RadioAccessCapabilityList		OPTIONAL,
		v370NonCriticalExtensions			SEQUENCE {
			ueCapabilityInformation-v370ext	UECapabilityInformation-v370ext,
			v380NonCriticalExtensions			SEQUENCE {
				ueCapabilityInformation-v380ext		UECapabilityInformation-v380ext-IEs,
				v3a0NonCriticalExtensions			SEQUENCE {
					ueCapabilityInformation-v3a0ext		UECapabilityInformation-v3a0ext-IEs,
					laterNonCriticalExtensions			SEQUENCE {
						-- Container for additional R99 extensions
						ueCapabilityInformation-r3-add-ext		BIT STRING
									(CONTAINING UECapabilityInformation-r3-add-ext-IEs)	OPTIONAL,
						-- Reserved for future non critical extension
						v4b0NonCriticalExtensions			SEQUENCE {
							ueCapabilityInformation-v4b0ext		UECapabilityInformation-v4b0ext,
							v590NonCriticalExtensions			SEQUENCE {
								ueCapabilityInformation-v590ext		UECapabilityInformation-v590ext,
								v5c0NonCriticalExtensions			SEQUENCE {
									ueCapabilityInformation-v5c0ext
																	UECapabilityInformation-v5c0ext,
									v6xyNonCriticalExtensions			SEQUENCE {
										ueCapabilityInformation-v6xyext
																UECapabilityInformation-v6xyext-IEs,
										nonCriticalExtensions				SEQUENCE {}		OPTIONAL
									}		OPTIONAL
								}		OPTIONAL
							}		OPTIONAL
						}		OPTIONAL
					}		OPTIONAL
				}		OPTIONAL
			}		OPTIONAL
		}		OPTIONAL
}

UECapabilityInformation-v370ext ::= SEQUENCE {
	-- User equipment IEs
		ue-RadioAccessCapability-v370ext		UE-RadioAccessCapability-v370ext		OPTIONAL
}

UECapabilityInformation-v380ext-IEs ::= SEQUENCE {
	-- User equipment IEs
		ue-RadioAccessCapability-v380ext		UE-RadioAccessCapability-v380ext		OPTIONAL,
		dl-PhysChCapabilityFDD-v380ext			DL-PhysChCapabilityFDD-v380ext
}

UECapabilityInformation-v3a0ext-IEs ::= SEQUENCE {
	-- User equipment IEs
		ue-RadioAccessCapability-v3a0ext		UE-RadioAccessCapability-v3a0ext		OPTIONAL
}

UECapabilityInformation-r3-add-ext-IEs ::= SEQUENCE {
		ueCapabilityInformation-v650ext		UECapabilityInformation-v650ext-IEs		OPTIONAL,
		v680NonCriticalExtensions			SEQUENCE {
			ueCapabilityInformation-v680ext		UECapabilityInformation-v680ext-IEs,
			nonCriticalExtensions				SEQUENCE {}		OPTIONAL
		}		OPTIONAL
}

UECapabilityInformation-v4b0ext ::= SEQUENCE {
	-- User equipment IEs
		ue-RadioAccessCapability-v4b0ext		UE-RadioAccessCapability-v4b0ext		OPTIONAL
}

UECapabilityInformation-v590ext ::= SEQUENCE {
	-- User equipment IEs
		ue-RadioAccessCapability-v3g0ext		UE-RadioAccessCapability-v3g0ext		OPTIONAL,
		ue-RadioAccessCapability-v590ext		UE-RadioAccessCapability-v590ext		OPTIONAL,
	-- Other IEs
		ue-RATSpecificCapability-v590ext	InterRAT-UE-RadioAccessCapability-v590ext	OPTIONAL
}

UECapabilityInformation-v5c0ext ::= SEQUENCE {
	-- User equipment IEs
		ue-RadioAccessCapability-v5c0ext		UE-RadioAccessCapability-v5c0ext		OPTIONAL
}

UECapabilityInformation-v650ext-IEs ::= SEQUENCE {
		ue-RadioAccessCapability-v650ext		UE-RadioAccessCapability-v650ext
}

UECapabilityInformation-v680ext-IEs ::= SEQUENCE {
	-- User equipment IEs
		ue-RadioAccessCapability-v680ext		UE-RadioAccessCapability-v680ext
}

UECapabilityInformation-v6xyext-IEs ::= SEQUENCE {
	-- User equipment IEs
		ueCapabilityContainer				BIT STRING
												(CONTAINING UE-CapabilityContainer-IEs)	OPTIONAL
}

-- ***************************************************
--
-- UE CAPABILITY INFORMATION CONFIRM
--
-- ***************************************************

UECapabilityInformationConfirm ::= CHOICE {
	r3								SEQUENCE {
		ueCapabilityInformationConfirm-r3
										UECapabilityInformationConfirm-r3-IEs,
		laterNonCriticalExtensions			SEQUENCE {
			-- Container for additional R99 extensions
			ueCapabilityInformationConfirm-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		}	OPTIONAL
	},
	later-than-r3					SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				SEQUENCE {}
	}
}

UECapabilityInformationConfirm-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier
}

-- ***************************************************
--
-- UPLINK DIRECT TRANSFER
--
-- ***************************************************

UplinkDirectTransfer ::= SEQUENCE {
	-- Core network IEs
		cn-DomainIdentity				CN-DomainIdentity,
		nas-Message						NAS-Message,
	-- Measurement IEs
		measuredResultsOnRACH			MeasuredResultsOnRACH				OPTIONAL,
		laterNonCriticalExtensions			SEQUENCE {
			-- Container for additional R99 extensions
			uplinkDirectTransfer-r3-add-ext		BIT STRING		OPTIONAL,
			v6xyNonCriticalExtensions			SEQUENCE {
				uplinkDirectTransfer-v6xyext		UplinkDirectTransfer-v6xyext-IEs,
				nonCriticalExtensions				SEQUENCE {}		OPTIONAL
			}	OPTIONAL
		}	OPTIONAL
}

UplinkDirectTransfer-v6xyext-IEs ::= SEQUENCE {
	-- Measurement IEs
	measuredResultsOnRACHinterFreq		MeasuredResultsOnRACHinterFreq				OPTIONAL
}

-- ***************************************************
--
-- UPLINK PHYSICAL CHANNEL CONTROL
--
-- ***************************************************

UplinkPhysicalChannelControl ::= CHOICE {
	r3								SEQUENCE {
		uplinkPhysicalChannelControl-r3	UplinkPhysicalChannelControl-r3-IEs,
		laterNonCriticalExtensions			SEQUENCE {
			-- Container for additional R99 extensions
			uplinkPhysicalChannelControl-r3-add-ext		BIT STRING		OPTIONAL,
			v4b0NonCriticalExtensions		SEQUENCE {
				uplinkPysicalChannelControl-v4b0ext		UplinkPhysicalChannelControl-v4b0ext-IEs,
				-- Extension mechanism for non-release 4 information
				noncriticalExtensions			SEQUENCE {}						OPTIONAL
			}	OPTIONAL
		}	OPTIONAL
	},
	later-than-r3					SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				CHOICE {
			r4								SEQUENCE {
				uplinkPhysicalChannelControl-r4	UplinkPhysicalChannelControl-r4-IEs,
				v4d0NonCriticalExtensions			SEQUENCE {
					-- Container for adding non critical extensions after freezing REL-5
					uplinkPhysicalChannelControl-r4-add-ext		BIT STRING		OPTIONAL,
					v6xyNonCriticalExtensions		SEQUENCE {
						uplinkPhysicalChannelControl-v6xyext	UplinkPhysicalChannelControl-v6xyext-IEs,
						nonCriticalExtensions			SEQUENCE {}	OPTIONAL
					}	OPTIONAL
				}	OPTIONAL
			},
			criticalExtensions			CHOICE {
				r5								SEQUENCE {
					uplinkPhysicalChannelControl-r5	UplinkPhysicalChannelControl-r5-IEs,
					-- Container for adding non critical extensions after freezing REL-6
					uplinkPhysicalChannelControl-r5-add-ext		BIT STRING		OPTIONAL,
					v6xyNonCriticalExtensions		SEQUENCE {
						uplinkPhysicalChannelControl-v6xyext	UplinkPhysicalChannelControl-v6xyext-IEs,
						nonCriticalExtensions			SEQUENCE {} OPTIONAL
					}	OPTIONAL
				},
				criticalExtensions				SEQUENCE {}
			}
		}
	}
}

UplinkPhysicalChannelControl-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier, 
	-- Physical channel IEs
		ccTrCH-PowerControlInfo			CCTrCH-PowerControlInfo				OPTIONAL,
		timingAdvance					UL-TimingAdvanceControl				OPTIONAL,
		alpha							Alpha								OPTIONAL,
		specialBurstScheduling			SpecialBurstScheduling				OPTIONAL,
		prach-ConstantValue				ConstantValueTdd					OPTIONAL,
		pusch-ConstantValue				ConstantValueTdd					OPTIONAL
}

UplinkPhysicalChannelControl-v4b0ext-IEs ::= SEQUENCE {
	-- In case of TDD, openLoopPowerControl-IPDL-TDD is included instead of IE
	-- up-IPDL-Parameters in up-OTDOA-AssistanceData
	openLoopPowerControl-IPDL-TDD	OpenLoopPowerControl-IPDL-TDD-r4	OPTIONAL
}

UplinkPhysicalChannelControl-r4-IEs ::= SEQUENCE {
	-- Physical channel IEs
		ccTrCH-PowerControlInfo			CCTrCH-PowerControlInfo-r4			OPTIONAL,
		specialBurstScheduling			SpecialBurstScheduling				OPTIONAL,
		tddOption						CHOICE {
			tdd384							SEQUENCE {
				timingAdvance					UL-TimingAdvanceControl-r4	OPTIONAL,
				alpha							Alpha						OPTIONAL,
				prach-ConstantValue				ConstantValueTdd			OPTIONAL,
				pusch-ConstantValue				ConstantValueTdd			OPTIONAL,
				openLoopPowerControl-IPDL-TDD	OpenLoopPowerControl-IPDL-TDD-r4	OPTIONAL
			},
			tdd128							SEQUENCE {
				ul-SynchronisationParameters	UL-SynchronisationParameters-r4	OPTIONAL
			}
		}
}

UplinkPhysicalChannelControl-r5-IEs ::= SEQUENCE {
	-- Physical channel IEs
		ccTrCH-PowerControlInfo			CCTrCH-PowerControlInfo-r5			OPTIONAL,
		specialBurstScheduling			SpecialBurstScheduling				OPTIONAL,
		tddOption						CHOICE {
			tdd384							SEQUENCE {
				timingAdvance					UL-TimingAdvanceControl-r4	OPTIONAL,
				alpha							Alpha						OPTIONAL,
				prach-ConstantValue				ConstantValueTdd			OPTIONAL,
				pusch-ConstantValue				ConstantValueTdd			OPTIONAL,
				openLoopPowerControl-IPDL-TDD	OpenLoopPowerControl-IPDL-TDD-r4	OPTIONAL,
				hs-SICH-PowerControl			HS-SICH-Power-Control-Info-TDD384	OPTIONAL
			},
			tdd128							SEQUENCE {
				ul-SynchronisationParameters	UL-SynchronisationParameters-r4	OPTIONAL
			}
		}
}

UplinkPhysicalChannelControl-v6xyext-IEs ::= SEQUENCE {
	-- Physical Channel IEs
		beaconPLEst						BEACON-PL-Est						OPTIONAL
}

-- ***************************************************
--
-- URA UPDATE
--
-- ***************************************************

URAUpdate ::= SEQUENCE {
	-- User equipment IEs
		u-RNTI							U-RNTI,
		ura-UpdateCause					URA-UpdateCause,
		protocolErrorIndicator			ProtocolErrorIndicatorWithMoreInfo,
		laterNonCriticalExtensions			SEQUENCE {
			-- Container for additional R99 extensions
			uraUpdate-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		}	OPTIONAL
}

-- ***************************************************
--
-- URA UPDATE CONFIRM
--
-- ***************************************************

URAUpdateConfirm ::= CHOICE {
	r3								SEQUENCE {
		uraUpdateConfirm-r3				URAUpdateConfirm-r3-IEs,
		laterNonCriticalExtensions			SEQUENCE {
			-- Container for additional R99 extensions
			uraUpdateConfirm-r3-add-ext		BIT STRING		OPTIONAL,
			v6xyNonCriticalExtensions		SEQUENCE {
				uraUpdateConfirm-v6xyext			URAUpdateConfirm-v6xyext-IEs,
				nonCriticalExtensions			SEQUENCE {}		OPTIONAL
			}	OPTIONAL
		}	OPTIONAL
	},
	later-than-r3					SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				CHOICE {
			r5								SEQUENCE {
				uraUpdateConfirm-r5				URAUpdateConfirm-r5-IEs,
				v6xyNonCriticalExtensions		SEQUENCE {
					uraUpdateConfirm-v6xyext			URAUpdateConfirm-v6xyext-IEs,
					nonCriticalExtensions			SEQUENCE {}		OPTIONAL
				}	OPTIONAL
			},
			criticalExtensions				SEQUENCE {}
		}
	}
}

URAUpdateConfirm-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier, 
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
	-- CN information elements
		cn-InformationInfo				CN-InformationInfo					OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Radio bearer IEs
		dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo		OPTIONAL
}

URAUpdateConfirm-r5-IEs ::= SEQUENCE {
	-- User equipment IEs
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		rrc-StateIndicator				RRC-StateIndicator,
		utran-DRX-CycleLengthCoeff		UTRAN-DRX-CycleLengthCoefficient	OPTIONAL,
	-- CN information elements
		cn-InformationInfo				CN-InformationInfo					OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Radio bearer IEs
		dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo-r5	OPTIONAL
}

URAUpdateConfirm-v6xyext-IEs ::= SEQUENCE {
	-- Core network IEs
		primary-plmn-Identity				PLMN-Identity					OPTIONAL
}

-- ***************************************************
--
-- URA UPDATE CONFIRM for CCCH
--
-- ***************************************************

URAUpdateConfirm-CCCH ::= CHOICE {
	r3								SEQUENCE {
		uraUpdateConfirm-CCCH-r3		URAUpdateConfirm-CCCH-r3-IEs,
		laterNonCriticalExtensions			SEQUENCE {
			-- Container for additional R99 extensions
			uraUpdateConfirm-CCCH-r3-add-ext		BIT STRING		OPTIONAL,
			v6xyNonCriticalExtensions		SEQUENCE {
				uraUpdateConfirm-v6xyext			URAUpdateConfirm-v6xyext-IEs,
				nonCriticalExtensions			SEQUENCE {}		OPTIONAL
			}	OPTIONAL
		}	OPTIONAL
	},
	later-than-r3					SEQUENCE {
		u-RNTI							U-RNTI,
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				SEQUENCE {}
	}
}

URAUpdateConfirm-CCCH-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		u-RNTI							U-RNTI,
	-- The rest of the message is identical to the one sent on DCCH.
		uraUpdateConfirm				URAUpdateConfirm-r3-IEs
}

-- ***************************************************
--
-- UTRAN MOBILITY INFORMATION
--
-- ***************************************************

UTRANMobilityInformation ::= CHOICE {
	r3								SEQUENCE {
		utranMobilityInformation-r3		UTRANMobilityInformation-r3-IEs,
		v3a0NonCriticalExtensions		SEQUENCE {
			utranMobilityInformation-v3a0ext	UTRANMobilityInformation-v3a0ext-IEs,
			laterNonCriticalExtensions			SEQUENCE {
				-- Container for additional R99 extensions
				utranMobilityInformation-r3-add-ext		BIT STRING		OPTIONAL,
				v6xyNonCriticalExtensions			SEQUENCE {
					utranMobilityInformation-v6xyext	UtranMobilityInformation-v6xyext-IEs,
					nonCriticalExtensions				SEQUENCE {}		OPTIONAL
				}		OPTIONAL
			}		OPTIONAL
		}		OPTIONAL
	},
	later-than-r3					SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		criticalExtensions				CHOICE {
			r5								SEQUENCE {
				utranMobilityInformation-r5		UTRANMobilityInformation-r5-IEs,
				v6xyNonCriticalExtensions		SEQUENCE {
					utranMobilityInformation-v6xyext	UtranMobilityInformation-v6xyext-IEs,
					nonCriticalExtensions			SEQUENCE {}		OPTIONAL
				}	OPTIONAL
			},
			criticalExtensions				SEQUENCE {}
		}
	}
}

UTRANMobilityInformation-r3-IEs ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier, 
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		ue-ConnTimersAndConstants		UE-ConnTimersAndConstants			OPTIONAL,
	-- CN information elements
		cn-InformationInfo				CN-InformationInfoFull				OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Radio bearer IEs
		dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo		OPTIONAL,
	-- Extension mechanism for non- release99 information
		nonCriticalExtensions			SEQUENCE {}		OPTIONAL
}

UTRANMobilityInformation-v3a0ext-IEs ::= SEQUENCE {
	ue-ConnTimersAndConstants-v3a0ext		UE-ConnTimersAndConstants-v3a0ext
}

UTRANMobilityInformation-r5-IEs ::= SEQUENCE {
	-- User equipment IEs
		integrityProtectionModeInfo		IntegrityProtectionModeInfo			OPTIONAL,
		cipheringModeInfo				CipheringModeInfo					OPTIONAL,
		new-U-RNTI						U-RNTI								OPTIONAL,
		new-C-RNTI						C-RNTI								OPTIONAL,
		ue-ConnTimersAndConstants		UE-ConnTimersAndConstants-r5		OPTIONAL,
	-- CN information elements
		cn-InformationInfo				CN-InformationInfoFull				OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Radio bearer IEs
		dl-CounterSynchronisationInfo	DL-CounterSynchronisationInfo-r5	OPTIONAL
}

UtranMobilityInformation-v6xyext-IEs ::= SEQUENCE {
	-- Core network IEs
		primary-plmn-Identity				PLMN-Identity						OPTIONAL
}

-- ***************************************************
--
-- UTRAN MOBILITY INFORMATION CONFIRM
--
-- ***************************************************

UTRANMobilityInformationConfirm ::= SEQUENCE {
	-- User equipment IEs
		rrc-TransactionIdentifier		RRC-TransactionIdentifier, 
		ul-IntegProtActivationInfo		IntegrityProtActivationInfo			OPTIONAL,
	-- Radio bearer IEs
		count-C-ActivationTime			ActivationTime						OPTIONAL,
		-- dummy is not used in this version of the specification and
		-- it should be ignored by the receiver.
		dummy							RB-ActivationTimeInfoList			OPTIONAL,
		ul-CounterSynchronisationInfo	UL-CounterSynchronisationInfo		OPTIONAL,
		laterNonCriticalExtensions			SEQUENCE {
			-- Container for additional R99 extensions
			utranMobilityInformationConfirm-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		}	OPTIONAL
}

-- ***************************************************
--
-- UTRAN MOBILITY INFORMATION FAILURE
--
-- ***************************************************

UTRANMobilityInformationFailure ::= SEQUENCE {
	-- UE information elements
		rrc-TransactionIdentifier		RRC-TransactionIdentifier, 
		failureCause					FailureCauseWithProtErr,
		laterNonCriticalExtensions			SEQUENCE {
			-- Container for additional R99 extensions
			utranMobilityInformationFailure-r3-add-ext		BIT STRING		OPTIONAL,
			nonCriticalExtensions			SEQUENCE {}		OPTIONAL
		}	OPTIONAL
}

-- ***************************************************
--
-- MBMS ACCESS INFORMATION
--
-- ***************************************************

MBMSAccessInformation ::= SEQUENCE {
	-- Access Information IEs
		mbms-ServiceAccessInfoList		MBMS-ServiceAccessInfoList-r6,
	-- Non critical extensions
		nonCriticalExtensions			SEQUENCE {}		OPTIONAL
}

-- ***************************************************
--
-- MBMS COMMON PTM RB INFORMATION
--
-- ***************************************************

MBMSCommonPTMRBInformation ::= SEQUENCE {
	-- Common PTM RB Information IEs
		mbms-CommonRBInformationList	MBMS-CommonRBInformationList-r6,
		mbms-TranspChInfoForEachTrCh	MBMS-TranspChInfoForEachTrCh-r6,
		mbms-TranspChInfoForEachCCTrCh	MBMS-TranspChInfoForEachCCTrCh-r6	OPTIONAL,
		mbms-PhyChInformationList		MBMS-PhyChInformationList-r6,
	-- Non critical extensions
		nonCriticalExtensions			SEQUENCE {}		OPTIONAL
}

-- ***************************************************
--
-- MBMS CURRENT CELL PTM RB INFORMATION
--
-- ***************************************************

MBMSCurrentCellPTMRBInformation ::= SEQUENCE {
	-- Current Cell PTM RB Information IEs
		mbms-CurrentCell-SCCPCHList		MBMS-CurrentCell-SCCPCHList-r6		OPTIONAL,
		mbms-SIBType5-SCCPCHList		MBMS-SIBType5-SCCPCHList-r6			OPTIONAL,
	-- Non critical extensions
		nonCriticalExtensions			SEQUENCE {}		OPTIONAL
}

-- ***************************************************
--
-- MBMS GENERAL INFORMATION
--
-- ***************************************************

MBMSGeneralInformation ::= SEQUENCE {
	-- MBMS General Information IEs
		mbms-PreferredFrequencyInfo		MBMS-PreferredFrequencyList-r6		OPTIONAL,
		mbms-TimersAndCounters			MBMS-TimersAndCounters-r6,
		michConfigurationInfo			MBMS-MICHConfigurationInfo-r6,
		cellGroupIdentity				MBMS-CellGroupIdentity-r6,
		mschDefaultConfigurationInfo	MBMS-MSCH-ConfigurationInfo-r6		OPTIONAL,
	-- Non critical extensions
		nonCriticalExtensions			SEQUENCE {}		OPTIONAL
}

-- ***************************************************
--
-- MBMS MODIFICATION REQUEST
--
-- ***************************************************

MBMSModificationRequest ::= SEQUENCE {
	-- MBMS Modification Request IEs
		mbms-PreferredFreqRequest		MBMS-ServiceIdentity-r6				OPTIONAL,
		rb-InformationReleaseList		RB-InformationReleaseList			OPTIONAL,
	-- Non critical extensions
		nonCriticalExtensions			SEQUENCE {}		OPTIONAL
}

-- ***************************************************
--
-- MBMS MODIFIED SERVICES INFORMATION
--
-- ***************************************************

MBMSModifiedServicesInformation ::= SEQUENCE {
	-- MBMS Modified Services Information IEs
		modifedServiceList				MBMS-ModifedServiceList-r6			OPTIONAL,
		mbms-ReacquireMCCH				ENUMERATED { true }					OPTIONAL,
		mbms-DynamicPersistenceLevel	DynamicPersistenceLevel				OPTIONAL,
		endOfModifiedMCCHInformation	INTEGER (1..16)						OPTIONAL,
		mbmsNumberOfNeighbourCells		MBMS-NumberOfNeighbourCells-r6,
		mbms-AllUnmodifiedPTMServices	ENUMERATED { true }					OPTIONAL,
		mbms-PTMActivationTime			MBMS-PTMActivationTime-r6			OPTIONAL,
	-- Non critical extensions
		nonCriticalExtensions			SEQUENCE {}		OPTIONAL
}

-- ***************************************************
--
-- MBMS NEIGHBOURING CELL PTM RB INFORMATION
--
-- ***************************************************

MBMSNeighbouringCellPTMRBInformation ::= SEQUENCE {
	-- MBMS Neighbouring Cell PTM RB Information IEs
		neighbouringCellIdentity		IntraFreqCellID,
		neighbouringCellSCCPCHList		MBMS-NeighbouringCellSCCPCHList-r6,
	-- Non critical extensions
		nonCriticalExtensions			SEQUENCE {}		OPTIONAL
}

-- ***************************************************
--
-- MBMS SCHEDULING INFORMATION
--
-- ***************************************************

MBMSSchedulingInformation ::= SEQUENCE {
	-- MBMS Scheduling Information IEs
		serviceSchedulingInfoList		MBMS-ServiceSchedulingInfoList-r6,
	-- Non critical extensions
		nonCriticalExtensions			SEQUENCE {}		OPTIONAL
}

-- ***************************************************
--
-- MBMS UNMODIFIED SERVICES INFORMATION
--
-- ***************************************************

MBMSUnmodifiedServicesInformation ::= SEQUENCE {
	-- MBMS Unmodified Services Information IEs
		unmodifiedServiceList			MBMS-UnmodifiedServiceList-r6		OPTIONAL,
	-- Non critical extensions
		nonCriticalExtensions			SEQUENCE {}		OPTIONAL
}

END


InformationElements DEFINITIONS AUTOMATIC TAGS ::=

-- ***************************************************
--
--     CORE NETWORK INFORMATION ELEMENTS (10.3.1)
--
-- ***************************************************

BEGIN

IMPORTS

	hiPDSCHidentities,
	hiPUSCHidentities,
	hiRM,
	maxAC,
	maxAdditionalMeas,
	maxASC,
	maxASCmap,
	maxASCpersist,
	maxCCTrCH,
	maxCellMeas,
	maxCellMeas-1,
	maxCNdomains,
	maxCPCHsets,
	maxDPCH-DLchan,
	maxDPDCH-UL,
	maxDRACclasses,
	maxE-DCHMACdFlow,
	maxE-DCHMACdFlow-1,
	maxFACHPCH,
	maxFreq,
	maxFreqBandsFDD,
	maxFreqBandsFDD-ext,
	maxFreqBandsTDD,
	maxFreqBandsGSM,
	maxGERAN-SI,
	maxHProcesses,
	maxHSDSCHTBIndex,
	maxHSDSCHTBIndex-tdd384,
	maxHSSCCHs,
	maxInterSysMessages,
	maxLoCHperRLC,
	maxMAC-d-PDUsizes,
	maxMBMS-CommonCCTrCh,
	maxMBMS-CommonPhyCh,
	maxMBMS-CommonRB,
	maxMBMS-CommonTrCh,
	maxMBMS-Freq,
	maxMBMS-L1CP,
	maxMBMSservCount,
	maxMBMSservModif,
	maxMBMSservSched,
	maxMBMSservUnmodif,
	maxMBMSTransmis,
	maxMeasEvent,
	maxMeasIntervals,
	maxMeasParEvent,
	maxNumCDMA2000Freqs,
	maxNumFDDFreqs,
	maxNumGSMFreqRanges,
	maxGSMTargetCells,
	maxNumTDDFreqs,
	maxOtherRAT,
	maxOtherRAT-16,
	maxPage1,
	maxPCPCH-APsig,
	maxPCPCH-APsubCh,
	maxPCPCH-CDsig,
	maxPCPCH-CDsubCh,
	maxPCPCH-SF,
	maxPCPCHs,
	maxPDCPAlgoType,
	maxPDSCH,
	maxPDSCH-TFCIgroups,
	maxPRACH,
	maxPRACH-FPACH,
	maxPredefConfig,
	maxPUSCH,
	maxQueueIDs,
	maxRABsetup,
	maxRAT,
	maxRB,
	maxRBallRABs,
	maxRBperTrCh,
	maxRBMuxOptions,
	maxRBperRAB,
	maxReportedGSMCells,
	maxRLCPDUsizePerLogChan,
	maxSRBsetup,
	maxRL,
	maxRL-1,
	maxEDCHRL,
	maxROHC-PacketSizes-r4,
	maxROHC-Profile-r4,
	maxSCCPCH,
	maxSat,
	maxSIB,
	maxSIB-FACH,
	maxSystemCapability,
	maxTF,
	maxTF-CPCH,
	maxTFC,
	maxTFCsub,
	maxTFCI-2-Combs,
	maxTGPS,
	maxTrCH,
	maxTrCHpreconf,
	maxTS,
	maxTS-1,
	maxTS-2,
	maxTS-LCR,
	maxTS-LCR-1,
	maxURA,
	maxURNTI-Group
FROM Constant-definitions;

Ansi-41-IDNNS ::=							BIT STRING (SIZE (14))

CN-DomainIdentity ::=				ENUMERATED {
										cs-domain,
										ps-domain }

CN-DomainInformation ::=			SEQUENCE {
	cn-DomainIdentity					CN-DomainIdentity,
	cn-DomainSpecificNAS-Info			NAS-SystemInformationGSM-MAP
}

CN-DomainInformationFull ::=		SEQUENCE {
	cn-DomainIdentity					CN-DomainIdentity,
	cn-DomainSpecificNAS-Info			NAS-SystemInformationGSM-MAP,
	cn-DRX-CycleLengthCoeff				CN-DRX-CycleLengthCoefficient
}

CN-DomainInformationList ::=		SEQUENCE (SIZE (1..maxCNdomains)) OF
										CN-DomainInformation

CN-DomainInformationListFull ::=	SEQUENCE (SIZE (1..maxCNdomains)) OF
										CN-DomainInformationFull

CN-DomainSysInfo ::=				SEQUENCE {
	cn-DomainIdentity					CN-DomainIdentity,
	cn-Type								CHOICE {
		gsm-MAP								NAS-SystemInformationGSM-MAP,
		ansi-41								NAS-SystemInformationANSI-41
	},
	cn-DRX-CycleLengthCoeff				CN-DRX-CycleLengthCoefficient
}

CN-DomainSysInfoList ::=			SEQUENCE (SIZE (1..maxCNdomains)) OF
										CN-DomainSysInfo

CN-InformationInfo ::= 				SEQUENCE {
	plmn-Identity						PLMN-Identity						OPTIONAL,
	cn-CommonGSM-MAP-NAS-SysInfo		NAS-SystemInformationGSM-MAP		OPTIONAL,
	cn-DomainInformationList			CN-DomainInformationList			OPTIONAL
}

CN-InformationInfo-r6 ::= 			SEQUENCE {
	plmn-Identity						PLMN-Identity						OPTIONAL,
	cn-CommonGSM-MAP-NAS-SysInfo		NAS-SystemInformationGSM-MAP		OPTIONAL,
	cn-DomainInformationList			CN-DomainInformationList			OPTIONAL,
	primary-plmn-Identity				PLMN-Identity						OPTIONAL
}

CN-InformationInfoFull ::= 			SEQUENCE {
	plmn-Identity						PLMN-Identity						OPTIONAL,
	cn-CommonGSM-MAP-NAS-SysInfo		NAS-SystemInformationGSM-MAP		OPTIONAL,
	cn-DomainInformationListFull		CN-DomainInformationListFull		OPTIONAL
}

Digit ::=							INTEGER (0..9)

Gsm-map-IDNNS ::=							SEQUENCE {
	routingbasis									CHOICE {
		localPTMSI										SEQUENCE {
			routingparameter								RoutingParameter
		},
		tMSIofsamePLMN									SEQUENCE {
			routingparameter								RoutingParameter
		},
		tMSIofdifferentPLMN								SEQUENCE {
			routingparameter								RoutingParameter
		},
		iMSIresponsetopaging							SEQUENCE {
			routingparameter								RoutingParameter
		},
		iMSIcauseUEinitiatedEvent						SEQUENCE {
			routingparameter								RoutingParameter
		},
		iMEI											SEQUENCE {
			routingparameter								RoutingParameter
		},
		spare2											SEQUENCE {
			routingparameter								RoutingParameter
		},
		spare1											SEQUENCE {
			routingparameter								RoutingParameter
		}
	},
	-- dummy is not used in this version of the specification and
	-- it should be ignored by the receiver.
	dummy									BOOLEAN
}

IMEI ::=							SEQUENCE (SIZE (15)) OF
										IMEI-Digit

IMEI-Digit ::=						INTEGER (0..15)

IMSI-GSM-MAP ::=					SEQUENCE (SIZE (6..21)) OF
										Digit

IntraDomainNasNodeSelector ::=					SEQUENCE {
	version											CHOICE {
		release99										SEQUENCE {
			cn-Type											CHOICE {
				gsm-Map-IDNNS									Gsm-map-IDNNS,
				ansi-41-IDNNS									Ansi-41-IDNNS
			}
		},
		later											SEQUENCE {
			futurecoding									BIT STRING (SIZE (15))
		}
	}
}

LAI ::=								SEQUENCE {
	plmn-Identity						PLMN-Identity,
	lac									BIT STRING (SIZE (16))
}

MCC ::=								SEQUENCE (SIZE (3)) OF
										Digit

MNC ::=								SEQUENCE (SIZE (2..3)) OF
										Digit

MultiplePLMN-List-r6 ::=			SEQUENCE {
	mibPLMN-Identity					BOOLEAN,
	multiplePLMNs						SEQUENCE (SIZE (1..5)) OF
											PLMN-IdentityWithOptionalMCC-r6
}

NAS-Message ::=						OCTET STRING (SIZE (1..4095))

NAS-Synchronisation-Indicator ::=	BIT STRING(SIZE(4))

NAS-SystemInformationGSM-MAP ::= 	OCTET STRING (SIZE (1..8))

P-TMSI-GSM-MAP ::=					BIT STRING (SIZE (32))

PagingRecordTypeID ::=				ENUMERATED {
										imsi-GSM-MAP,
										tmsi-GSM-MAP-P-TMSI,
										imsi-DS-41,
										tmsi-DS-41 }

PLMN-Identity ::=					SEQUENCE {
	mcc									MCC,
	mnc									MNC
}

PLMN-IdentityWithOptionalMCC-r6 ::=	SEQUENCE {
	mcc									MCC						OPTIONAL,
	mnc									MNC
}

PLMN-Type ::=						CHOICE {
	gsm-MAP								SEQUENCE {
		plmn-Identity						PLMN-Identity
	},
	ansi-41							SEQUENCE {
		p-REV							P-REV,
		min-P-REV						Min-P-REV,
		sid								SID,
		nid								NID
	},
	gsm-MAP-and-ANSI-41				SEQUENCE {
		plmn-Identity					PLMN-Identity,
		p-REV							P-REV,
		min-P-REV						Min-P-REV,
		sid								SID,
		nid								NID
	},
	spare							NULL
}

RAB-Identity ::=					CHOICE {
	gsm-MAP-RAB-Identity				BIT STRING (SIZE (8)),
	ansi-41-RAB-Identity				BIT STRING (SIZE (8))
}

RAI ::=								SEQUENCE {
	lai									LAI,
	rac									RoutingAreaCode
}

RoutingAreaCode ::=					BIT STRING (SIZE (8))

RoutingParameter ::=							BIT STRING (SIZE (10))

TMSI-GSM-MAP ::=					BIT STRING (SIZE (32))

-- ***************************************************
--
--     UTRAN MOBILITY INFORMATION ELEMENTS (10.3.2)
--
-- ***************************************************

AccessClassBarred ::=				ENUMERATED {
										barred, notBarred }

AccessClassBarredList ::=			SEQUENCE (SIZE (maxAC)) OF
										AccessClassBarred

AllowedIndicator ::=				ENUMERATED {
										allowed, notAllowed }

CellAccessRestriction ::=			SEQUENCE {
	cellBarred							CellBarred,
	cellReservedForOperatorUse			ReservedIndicator,
	cellReservationExtension			ReservedIndicator,
	-- NOTE: IE accessClassBarredList should not be included if the IE CellAccessRestriction
	-- is included in the IE SysInfoType4
	accessClassBarredList				AccessClassBarredList				OPTIONAL
}

CellBarred ::=						CHOICE {
	barred								SEQUENCE {
		intraFreqCellReselectionInd			AllowedIndicator,
		t-Barred							T-Barred
	},
	notBarred							NULL
}

CellIdentity ::=					BIT STRING (SIZE (28))

CellIdentity-PerRL-List ::=			SEQUENCE (SIZE (1..maxRL)) OF CellIdentity

CellSelectReselectInfoSIB-3-4 ::=	SEQUENCE {
	mappingInfo							MappingInfo							OPTIONAL,
	cellSelectQualityMeasure			CHOICE {
		cpich-Ec-N0							SEQUENCE {
			-- Default value for q-HYST-2-S is q-HYST-1-S
			q-HYST-2-S							Q-Hyst-S					OPTIONAL
			-- Default value for q-HYST-2-S is q-HYST-1-S
		},
		cpich-RSCP							NULL
	},
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			s-Intrasearch						S-SearchQual				OPTIONAL,
			s-Intersearch						S-SearchQual				OPTIONAL,
			s-SearchHCS							S-SearchRXLEV				OPTIONAL,
			rat-List							RAT-FDD-InfoList			OPTIONAL,
			q-QualMin							Q-QualMin,
			q-RxlevMin							Q-RxlevMin
		},
		tdd									SEQUENCE {
			s-Intrasearch						S-SearchRXLEV				OPTIONAL,
			s-Intersearch						S-SearchRXLEV				OPTIONAL,
			s-SearchHCS							S-SearchRXLEV				OPTIONAL,
			rat-List							RAT-TDD-InfoList			OPTIONAL,
			q-RxlevMin							Q-RxlevMin
		}
	},	
	q-Hyst-l-S							Q-Hyst-S,
	t-Reselection-S						T-Reselection-S,
	hcs-ServingCellInformation			HCS-ServingCellInformation			OPTIONAL,
	maxAllowedUL-TX-Power				MaxAllowedUL-TX-Power
}

DomainSpecificAccessRestrictionForSharedNetwork-v670ext ::= CHOICE {
		domainSpecificAccessRestictionList					DomainSpecificAccessRestrictionList-v670ext,
		domainSpecificAccessRestictionParametersForAll		DomainSpecificAccessRestrictionParam-v670ext
}

DomainSpecificAccessRestrictionList-v670ext ::= SEQUENCE {
		domainSpecificAccessRestrictionParametersForOperator1
									DomainSpecificAccessRestrictionParam-v670ext	OPTIONAL,
		domainSpecificAccessRestrictionParametersForOperator2
									DomainSpecificAccessRestrictionParam-v670ext	OPTIONAL,
		domainSpecificAccessRestrictionParametersForOperator3
									DomainSpecificAccessRestrictionParam-v670ext	OPTIONAL,
		domainSpecificAccessRestrictionParametersForOperator4
									DomainSpecificAccessRestrictionParam-v670ext	OPTIONAL,
		domainSpecificAccessRestrictionParametersForOperator5
									DomainSpecificAccessRestrictionParam-v670ext	OPTIONAL
}

DomainSpecificAccessRestrictionParam-v670ext ::= SEQUENCE {		
		cSDomainSpecificAccessRestriction		DomainSpecificAccessRestriction-v670ext,
		pSDomainSpecificAccessRestriction		DomainSpecificAccessRestriction-v670ext
}

DomainSpecificAccessRestriction-v670ext ::= CHOICE {
		noRestriction		NULL,
		restriction			SEQUENCE {
			domainSpecficAccessClassBarredList		AccessClassBarredList	OPTIONAL
		}
}

MapParameter ::=					INTEGER (0..99)

Mapping ::=							SEQUENCE {
	rat									RAT,
	mappingFunctionParameterList		MappingFunctionParameterList
}

Mapping-LCR-r4 ::=					SEQUENCE {
	mappingFunctionParameterList		MappingFunctionParameterList
}

MappingFunctionParameter ::=		SEQUENCE {
	functionType						MappingFunctionType,
	mapParameter1						MapParameter						OPTIONAL,
	mapParameter2						MapParameter,
	-- The presence of upperLimit is conditional on the number of repetition
	upperLimit							UpperLimit							OPTIONAL
}

MappingFunctionParameterList ::= 	SEQUENCE (SIZE (1..maxMeasIntervals)) OF
										MappingFunctionParameter

MappingFunctionType ::=				ENUMERATED {
										linear,
										functionType2,
										functionType3,
										functionType4 }

-- In MappingInfo list, mapping for FDD and 3.84Mcps TDD is defined.
-- For 1.28Mcps TDD, Mapping-LCR-r4 is used instead.
MappingInfo ::=						SEQUENCE (SIZE (1..maxRAT)) OF
										Mapping

-- Actual value Q-Hyst-S = IE value * 2
Q-Hyst-S ::=						INTEGER (0..20)

Q-Hyst-S-Fine ::= INTEGER (0..40)

RAT ::=								ENUMERATED {
										utra-FDD,
										utra-TDD,
										gsm,
										cdma2000 }

RAT-FDD-Info ::=					SEQUENCE {
	rat-Identifier						RAT-Identifier,
	s-SearchRAT							S-SearchQual,
	s-HCS-RAT							S-SearchRXLEV							OPTIONAL,
	s-Limit-SearchRAT					S-SearchQual
}

RAT-FDD-InfoList ::=				SEQUENCE (SIZE (1..maxOtherRAT)) OF
										RAT-FDD-Info

RAT-Identifier ::=					ENUMERATED {
										gsm, cdma2000 }

RAT-TDD-Info ::=					SEQUENCE {
	rat-Identifier						RAT-Identifier,
	s-SearchRAT							S-SearchRXLEV,
	s-HCS-RAT							S-SearchRXLEV						OPTIONAL,
	s-Limit-SearchRAT					S-SearchRXLEV
}

RAT-TDD-InfoList ::=				SEQUENCE (SIZE (1..maxOtherRAT)) OF
										RAT-TDD-Info

ReservedIndicator ::=				ENUMERATED {
										reserved,
										notReserved }

-- Actual value S-SearchQual = IE value * 2
S-SearchQual ::=						INTEGER (-16..10)

-- Actual value S-SearchRXLEV = (IE value * 2) + 1
S-SearchRXLEV ::=						INTEGER (-53..45)

-- Actual value ScalingFactor = IE value * 0.1
SpeedDependentScalingFactor ::=		INTEGER (0..10)

T-Barred ::=						ENUMERATED {
										s10, s20, s40, s80,
										s160, s320, s640, s1280 }

T-Reselection-S ::=					INTEGER (0..31)

-- Actual value T-Reselection-S-Fine = IE value * 0.2
T-Reselection-S-Fine ::=			INTEGER (0..31)

-- Actual value ScalingFactor = IE value * 0.25
TreselectionScalingFactor ::=		INTEGER (4..19)

-- For UpperLimit, the used range depends on the RAT used.
UpperLimit ::=						INTEGER (1..91)

URA-Identity ::=					BIT STRING (SIZE (16))

URA-IdentityList ::=				SEQUENCE (SIZE (1..maxURA)) OF
										URA-Identity

-- ***************************************************
--
--     USER EQUIPMENT INFORMATION ELEMENTS (10.3.3)
--
-- ***************************************************

AccessStratumReleaseIndicator ::=	ENUMERATED {
										rel-4, rel-5, rel-6, spare13,
										spare12, spare11, spare10, spare9, spare8,
										spare7,	spare6,	spare5, spare4, spare3,
										spare2, spare1 }

-- TABULAR : for ActivationTime, value 'now' always appear as default, and is encoded
-- by absence of the field
ActivationTime ::=					INTEGER (0..255)

BackoffControlParams ::=			SEQUENCE {
	n-AP-RetransMax						N-AP-RetransMax,
	n-AccessFails						N-AccessFails,
	nf-BO-NoAICH						NF-BO-NoAICH,
	ns-BO-Busy							NS-BO-Busy,
	nf-BO-AllBusy						NF-BO-AllBusy,
	nf-BO-Mismatch						NF-BO-Mismatch,
	t-CPCH								T-CPCH
}

C-RNTI ::=							BIT STRING (SIZE (16))

CapabilityUpdateRequirement ::=		SEQUENCE {
	ue-RadioCapabilityFDDUpdateRequirement	BOOLEAN,
	-- ue-RadioCapabilityTDDUpdateRequirement is for 3.84Mcps TDD update requirement
	ue-RadioCapabilityTDDUpdateRequirement	BOOLEAN,
	systemSpecificCapUpdateReqList		SystemSpecificCapUpdateReqList		OPTIONAL
}

CapabilityUpdateRequirement-r4-ext ::= SEQUENCE {
	ue-RadioCapabilityUpdateRequirement-TDD128	BOOLEAN
}

CapabilityUpdateRequirement-r4 ::=	SEQUENCE {
	ue-RadioCapabilityFDDUpdateRequirement-FDD	BOOLEAN,
	ue-RadioCapabilityTDDUpdateRequirement-TDD384	BOOLEAN,
	ue-RadioCapabilityTDDUpdateRequirement-TDD128	BOOLEAN,
	systemSpecificCapUpdateReqList		SystemSpecificCapUpdateReqList		OPTIONAL
}

-- If the IE CellUpdateCause has the value 'cellUpdateCause-ext', the actual value is
-- defined in the IE CellUpdateCause-ext.
CellUpdateCause ::=					ENUMERATED { 
										cellReselection,
										periodicalCellUpdate,
										uplinkDataTransmission,
										utran-pagingResponse,
										re-enteredServiceArea,
										radiolinkFailure,
										rlc-unrecoverableError,
										cellUpdateCause-ext }

-- The IE CellUpdateCause-ext shall be present, if the IE CellUpdateCause has the
-- value 'cellUpdateCause-ext'.
CellUpdateCause-ext ::=				ENUMERATED {
										mbms-Reception,
										mbms-PTP-RB-Request, spare2, spare1 }

ChipRateCapability ::=				ENUMERATED {
										mcps3-84, mcps1-28 }

CipheringAlgorithm ::=				ENUMERATED {
										uea0, uea1 }

CipheringModeCommand ::=			CHOICE {
	startRestart						CipheringAlgorithm,
	dummy						NULL
}

CipheringModeInfo ::=				SEQUENCE {
	-- TABULAR: The ciphering algorithm is included in the CipheringModeCommand.
	cipheringModeCommand				CipheringModeCommand,
	activationTimeForDPCH				ActivationTime						OPTIONAL,
	rb-DL-CiphActivationTimeInfo		RB-ActivationTimeInfoList			OPTIONAL
}

CN-DRX-CycleLengthCoefficient ::=	INTEGER (6..9)

CN-PagedUE-Identity ::=				CHOICE {
	imsi-GSM-MAP						IMSI-GSM-MAP,
	tmsi-GSM-MAP						TMSI-GSM-MAP,
	p-TMSI-GSM-MAP						P-TMSI-GSM-MAP,
	imsi-DS-41							IMSI-DS-41,
	tmsi-DS-41							TMSI-DS-41,
	spare3								NULL,
	spare2								NULL,
	spare1								NULL
}

CompressedModeMeasCapability ::= 	SEQUENCE {
	fdd-Measurements					BOOLEAN,
	-- TABULAR: The IEs tdd-Measurements, gsm-Measurements and multiCarrierMeasurements
	-- are made optional since they are conditional based on another information element.
	-- Their absence corresponds to the case where the condition is not true.
	tdd-Measurements					BOOLEAN								OPTIONAL,
	gsm-Measurements					GSM-Measurements					OPTIONAL,
	multiCarrierMeasurements			BOOLEAN								OPTIONAL
}

CompressedModeMeasCapability-LCR-r4 ::=	SEQUENCE {
	tdd128-Measurements						BOOLEAN							OPTIONAL
}

CompressedModeMeasCapabFDDList ::=	SEQUENCE (SIZE (1..maxFreqBandsFDD)) OF
										CompressedModeMeasCapabFDD

CompressedModeMeasCapabFDDList2 ::=	SEQUENCE (SIZE (1..maxFreqBandsFDD)) OF
										CompressedModeMeasCapabFDD2

CompressedModeMeasCapabFDDList-ext ::= SEQUENCE (SIZE (1..maxFreqBandsFDD)) OF
											CompressedModeMeasCapabFDD-ext

CompressedModeMeasCapabFDD ::=		SEQUENCE {
	radioFrequencyBandFDD				RadioFrequencyBandFDD	OPTIONAL,
	dl-MeasurementsFDD					BOOLEAN,
	ul-MeasurementsFDD					BOOLEAN
}

CompressedModeMeasCapabFDD2 ::=		SEQUENCE {
	-- UE may omit both IEs if this IE indicates the compressed mode capability within the same
	-- frequency band. Otherwise, the UE shall include either one of the following OPTIONAL IEs.
	radioFrequencyBandFDD				RadioFrequencyBandFDD	OPTIONAL,
	radioFrequencyBandFDD2				RadioFrequencyBandFDD2	OPTIONAL,
	dl-MeasurementsFDD					BOOLEAN,
	ul-MeasurementsFDD					BOOLEAN
}

CompressedModeMeasCapabFDD-ext ::=		SEQUENCE {
	radioFrequencyBandFDD2				RadioFrequencyBandFDD2,
	dl-MeasurementsFDD					BOOLEAN,
	ul-MeasurementsFDD					BOOLEAN
}

CompressedModeMeasCapabTDDList ::=	SEQUENCE (SIZE (1..maxFreqBandsTDD)) OF
										CompressedModeMeasCapabTDD

CompressedModeMeasCapabTDD ::=		SEQUENCE {
	radioFrequencyBandTDD				RadioFrequencyBandTDD,
	dl-MeasurementsTDD					BOOLEAN,
	ul-MeasurementsTDD					BOOLEAN
}

CompressedModeMeasCapabGSMList ::=	SEQUENCE (SIZE (1..maxFreqBandsGSM)) OF
										CompressedModeMeasCapabGSM

CompressedModeMeasCapabGSM ::=		SEQUENCE {
	radioFrequencyBandGSM				RadioFrequencyBandGSM,
	dl-MeasurementsGSM					BOOLEAN,
	ul-MeasurementsGSM					BOOLEAN
}

CompressedModeMeasCapabMC ::=		SEQUENCE {
	dl-MeasurementsMC					BOOLEAN,
	ul-MeasurementsMC					BOOLEAN
}

CPCH-Parameters ::=					SEQUENCE {
	initialPriorityDelayList			InitialPriorityDelayList			OPTIONAL,
	backoffControlParams				BackoffControlParams,
	-- TABULAR: TPC step size nested inside PowerControlAlgorithm
	powerControlAlgorithm				PowerControlAlgorithm,
	dl-DPCCH-BER						DL-DPCCH-BER
}

DL-CapabilityWithSimultaneousHS-DSCHConfig ::=	ENUMERATED{kbps32, kbps64, kbps128, kbps384}

DL-DPCCH-BER ::=					INTEGER (0..63)

DL-PhysChCapabilityFDD ::=			SEQUENCE {
	-- The IE maxNoDPCH-PDSCH-Codes only gives information on the maximum number of DPCH Codes.
	maxNoDPCH-PDSCH-Codes				INTEGER (1..8),
	maxNoPhysChBitsReceived				MaxNoPhysChBitsReceived,
	supportForSF-512					BOOLEAN,
	-- dummy and dummy2 are not used in this version of the specification, they should not be sent
	-- and if received they should be ignored.
	dummy								BOOLEAN,
	dummy2								SimultaneousSCCPCH-DPCH-Reception
}

DL-PhysChCapabilityFDD-v380ext ::=			SEQUENCE {
	-- dummy is not used in this version of the specification, it should
	-- not be sent and if received it should be ignored.
	dummy										SupportOfDedicatedPilotsForChEstimation		OPTIONAL
}

SupportOfDedicatedPilotsForChEstimation ::=			ENUMERATED { true }

DL-PhysChCapabilityTDD ::=			SEQUENCE {
	maxTS-PerFrame						MaxTS-PerFrame,
	maxPhysChPerFrame					MaxPhysChPerFrame,
	minimumSF							MinimumSF-DL,
	supportOfPDSCH						BOOLEAN,
	maxPhysChPerTS						MaxPhysChPerTS	
}

DL-PhysChCapabilityTDD-LCR-r4 ::=	SEQUENCE {
	maxTS-PerSubFrame					MaxTS-PerSubFrame-r4,
	maxPhysChPerFrame					MaxPhysChPerSubFrame-r4,
	minimumSF							MinimumSF-DL,
	supportOfPDSCH						BOOLEAN,
	maxPhysChPerTS						MaxPhysChPerTS,
	supportOf8PSK						BOOLEAN
}

DL-TransChCapability ::=			SEQUENCE {
	maxNoBitsReceived					MaxNoBits,
	maxConvCodeBitsReceived				MaxNoBits,
	turboDecodingSupport				TurboSupport,
	maxSimultaneousTransChs				MaxSimultaneousTransChsDL,
	maxSimultaneousCCTrCH-Count			MaxSimultaneousCCTrCH-Count,
	maxReceivedTransportBlocks			MaxTransportBlocksDL,
	maxNumberOfTFC						MaxNumberOfTFC-DL,
	maxNumberOfTF						MaxNumberOfTF
}

DRAC-SysInfo ::=					SEQUENCE {
	transmissionProbability				TransmissionProbability,
	maximumBitRate						MaximumBitRate
}

DRAC-SysInfoList ::=				SEQUENCE (SIZE (1..maxDRACclasses)) OF
										DRAC-SysInfo

DSCH-RNTI ::=						BIT STRING (SIZE (16))

DelayRestrictionFlag ::=			ENUMERATED { true }

E-RNTI ::=							BIT STRING (SIZE (16))

ESN-DS-41 ::=						BIT STRING (SIZE (32))

EstablishmentCause ::=				ENUMERATED {
										originatingConversationalCall,
										originatingStreamingCall, 
										originatingInteractiveCall,
										originatingBackgroundCall,
										originatingSubscribedTrafficCall,
										terminatingConversationalCall,
										terminatingStreamingCall,
										terminatingInteractiveCall,
										terminatingBackgroundCall,
										emergencyCall,
										interRAT-CellReselection,
										interRAT-CellChangeOrder,
										registration,
										detach,
										originatingHighPrioritySignalling,
										originatingLowPrioritySignalling,
										callRe-establishment,
										terminatingHighPrioritySignalling,
										terminatingLowPrioritySignalling,
										terminatingCauseUnknown,
										mbms-Reception,
										mbms-PTP-RB-Request,
										spare10,
										spare9,
										spare8,
										spare7,
										spare6,
										spare5,
										spare4,
										spare3,
										spare2,
										spare1 }

FailureCauseWithProtErr ::=			CHOICE {
	configurationUnsupported			NULL,
	physicalChannelFailure				NULL,
	incompatibleSimultaneousReconfiguration
										NULL,
	compressedModeRuntimeError			TGPSI,
	protocolError						ProtocolErrorInformation,
	cellUpdateOccurred					NULL,
	invalidConfiguration				NULL,
	configurationIncomplete				NULL,
	unsupportedMeasurement				NULL,
	mbmsSessionAlreadyReceivedCorrectly	NULL,
	lowerPriorityMBMSService			NULL,
	spare5								NULL,
	spare4								NULL,
	spare3								NULL,
	spare2								NULL,
	spare1								NULL
}

FailureCauseWithProtErrTrId ::=		SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier, 
		failureCause					FailureCauseWithProtErr
}

GroupIdentityWithReleaseInformation ::=		SEQUENCE {
		rrc-ConnectionReleaseInformation		RRC-ConnectionReleaseInformation,
		groupReleaseInformation					GroupReleaseInformation
	}

GroupReleaseInformation ::=			SEQUENCE {
	uRNTI-Group							U-RNTI-Group
}

GSM-Measurements ::=				SEQUENCE {
	gsm900								BOOLEAN,
	dcs1800								BOOLEAN,
	gsm1900								BOOLEAN
}

H-RNTI ::=							BIT STRING (SIZE (16))

HSDSCH-physical-layer-category ::=		INTEGER (1..64)

UESpecificBehaviourInformation1idle ::= BIT STRING (SIZE (4))

UESpecificBehaviourInformation1interRAT ::= BIT STRING (SIZE (8))


IMSI-and-ESN-DS-41 ::=				SEQUENCE {
	imsi-DS-41							IMSI-DS-41,
	esn-DS-41							ESN-DS-41
}

IMSI-DS-41 ::=						OCTET STRING (SIZE (5..7))

InitialPriorityDelayList ::=		SEQUENCE (SIZE (1..maxASC)) OF
										NS-IP

InitialUE-Identity ::=				CHOICE {
	imsi								IMSI-GSM-MAP,
	tmsi-and-LAI						TMSI-and-LAI-GSM-MAP,
	p-TMSI-and-RAI						P-TMSI-and-RAI-GSM-MAP,
	imei								IMEI,
	esn-DS-41							ESN-DS-41,
	imsi-DS-41							IMSI-DS-41,
	imsi-and-ESN-DS-41					IMSI-and-ESN-DS-41,
	tmsi-DS-41							TMSI-DS-41
}

IntegrityCheckInfo ::=				SEQUENCE {
	messageAuthenticationCode			MessageAuthenticationCode,
	rrc-MessageSequenceNumber			RRC-MessageSequenceNumber
}

IntegrityProtActivationInfo ::=		SEQUENCE {
	rrc-MessageSequenceNumberList		RRC-MessageSequenceNumberList
}

IntegrityProtectionAlgorithm ::=	ENUMERATED {
										uia1 }


IntegrityProtectionModeCommand ::= 	CHOICE {
	startIntegrityProtection			SEQUENCE {
		integrityProtInitNumber				IntegrityProtInitNumber
	},
	modify								SEQUENCE {
		dl-IntegrityProtActivationInfo		IntegrityProtActivationInfo
	}
}

IntegrityProtectionModeInfo ::=		SEQUENCE {
	-- TABULAR: DL integrity protection activation info and Integrity
	-- protection intialisation number have been nested inside 
	-- IntegrityProtectionModeCommand.
	integrityProtectionModeCommand		IntegrityProtectionModeCommand,
	integrityProtectionAlgorithm		IntegrityProtectionAlgorithm		OPTIONAL	
}

IntegrityProtInitNumber ::=			BIT STRING (SIZE (32))

-- dummy is not used in this version of the specification, it should
-- not be sent and if received it should be ignored.
MaxHcContextSpace ::=					ENUMERATED	{
											dummy, by1024, by2048, by4096, 
											by8192 }

MaxHcContextSpace-r5-ext ::=			ENUMERATED	{
											by16384, by32768, by65536, by131072 }


MaxROHC-ContextSessions-r4 ::=		ENUMERATED	{
											s2, s4, s8, s12, s16, s24, s32, s48,
											s64, s128, s256, s512, s1024, s16384 }

MaximumAM-EntityNumberRLC-Cap ::=	ENUMERATED {
										dummy, am4, am5, am6, 
										am8, am16, am30 }

-- Actual value MaximumBitRate = IE value * 16
MaximumBitRate ::=					INTEGER (0..32)

MaximumRLC-WindowSize ::=			ENUMERATED { mws2047, mws4095 }

MaxNoDPDCH-BitsTransmitted ::=		ENUMERATED {
										b600, b1200, b2400, b4800, 
										b9600, b19200, b28800, b38400,
										b48000, b57600 }

MaxNoBits ::=						ENUMERATED {
										b640, b1280, b2560, b3840, b5120,
										b6400, b7680, b8960, b10240,
										b20480, b40960, b81920, b163840 }

MaxNoPhysChBitsReceived ::=			ENUMERATED {
										dummy, b1200, b2400, b3600, 
										b4800, b7200, b9600, b14400, 
										b19200, b28800, b38400, b48000, 
										b57600, b67200, b76800 }

MaxNoSCCPCH-RL ::=					ENUMERATED {
										rl1 }

MaxNumberOfTF ::=					ENUMERATED {
										tf32, tf64, tf128, tf256,
										tf512, tf1024 }

MaxNumberOfTFC-DL ::=				ENUMERATED {
										tfc16, tfc32, tfc48, tfc64, tfc96, 
										tfc128, tfc256, tfc512, tfc1024 }

MaxNumberOfTFC-UL ::=				ENUMERATED {
										dummy1, dummy2, tfc16, tfc32, tfc48, tfc64, 
										tfc96, tfc128, tfc256, tfc512, tfc1024 }

-- the values 1 4 for MaxPhysChPerFrame are not used in this version of the protocol 
MaxPhysChPerFrame ::=				INTEGER (1..224)

MaxPhysChPerSubFrame-r4 ::=			INTEGER (1..96)

MaxPhysChPerTimeslot ::=			ENUMERATED {
										ts1, ts2 }

-- the values 1 4 for MaxPhysChPerTS are not used in this version of the protocol 
MaxPhysChPerTS ::=					INTEGER (1..16)

MaxSimultaneousCCTrCH-Count ::=		INTEGER (1..8)

MaxSimultaneousTransChsDL ::=		ENUMERATED {
										e4, e8, e16, e32 }

MaxSimultaneousTransChsUL ::=		ENUMERATED {
										dummy, e4, e8, e16, e32 }

MaxTransportBlocksDL ::=			ENUMERATED {
										tb4, tb8, tb16, tb32, tb48,
										tb64, tb96, tb128, tb256, tb512 }

MaxTransportBlocksUL ::=			ENUMERATED {
										dummy, tb4, tb8, tb16, tb32, tb48,
										tb64, tb96, tb128, tb256, tb512 }

MaxTS-PerFrame ::=					INTEGER (1..14)

MaxTS-PerSubFrame-r4 ::=			INTEGER (1..6)

-- TABULAR: MeasurementCapability contains dependencies to UE-MultiModeRAT-Capability,
-- the conditional fields have been left mandatory for now.
MeasurementCapability ::=			SEQUENCE {
	downlinkCompressedMode				CompressedModeMeasCapability,
	uplinkCompressedMode				CompressedModeMeasCapability	
}

MeasurementCapabilityExt ::= 		SEQUENCE{
	compressedModeMeasCapabFDDList		CompressedModeMeasCapabFDDList,
	compressedModeMeasCapabTDDList		CompressedModeMeasCapabTDDList	OPTIONAL,
	compressedModeMeasCapabGSMList		CompressedModeMeasCapabGSMList	OPTIONAL,
	compressedModeMeasCapabMC			CompressedModeMeasCapabMC		OPTIONAL
}

MeasurementCapabilityExt2 ::= 		SEQUENCE{
	compressedModeMeasCapabFDDList		CompressedModeMeasCapabFDDList2,
	compressedModeMeasCapabTDDList		CompressedModeMeasCapabTDDList	OPTIONAL,
	compressedModeMeasCapabGSMList		CompressedModeMeasCapabGSMList	OPTIONAL,
	compressedModeMeasCapabMC			CompressedModeMeasCapabMC		OPTIONAL
}


MeasurementCapability-r4-ext ::=	SEQUENCE {
	downlinkCompressedMode-LCR			CompressedModeMeasCapability-LCR-r4,
	uplinkCompressedMode-LCR			CompressedModeMeasCapability-LCR-r4
}

MessageAuthenticationCode ::=		BIT STRING (SIZE (32))

MinimumSF-DL ::=					ENUMERATED {
										sf1, sf16 }

MinimumSF-UL ::=					ENUMERATED {
										sf1, sf2, sf4, sf8, dummy }

MultiModeCapability ::=				ENUMERATED {
										tdd, fdd, fdd-tdd }

MultiRAT-Capability ::=				SEQUENCE {
	supportOfGSM						BOOLEAN,
	supportOfMulticarrier				BOOLEAN
} 

MultiModeRAT-Capability-v590ext ::=	SEQUENCE {
	supportOfUTRAN-ToGERAN-NACC			BOOLEAN
}

MultiModeRAT-Capability-v680ext ::=	SEQUENCE {
	supportOfHandoverToGAN				ENUMERATED { doesSupportHandoverToGAN }		OPTIONAL
}

N-300 ::=							INTEGER (0..7)

N-301 ::=							INTEGER (0..7)

N-302 ::=							INTEGER (0..7)

N-304 ::=							INTEGER (0..7)

N-308 ::=							INTEGER (1..8)

N-310 ::=							INTEGER (0..7)

N-312 ::=							ENUMERATED {
										s1, s50, s100, s200, s400,
										s600, s800, s1000 }

N-312ext ::=						ENUMERATED {
										s2, s4, s10, s20 }

N-312-r5 ::=							ENUMERATED {
										s1, s2, s4, s10, s20,
										s50, s100, s200, s400,
										s600, s800, s1000 }

N-313 ::=							ENUMERATED {
										s1, s2, s4, s10, s20,
										 s50, s100, s200 }

N-315 ::=							ENUMERATED {
										s1, s50, s100, s200, s400,
										s600, s800, s1000 }

N-315ext ::=						ENUMERATED {
										s2, s4, s10, s20 }

N-315-r5 ::=							ENUMERATED {
										s1, s2, s4, s10, s20,
										s50, s100, s200, s400,
										s600, s800, s1000 }


N-AccessFails ::=					INTEGER (1..64)

N-AP-RetransMax ::=					INTEGER (1..64)

NetworkAssistedGPS-Supported ::=	ENUMERATED {
										networkBased, 
										ue-Based,
										bothNetworkAndUE-Based,
										noNetworkAssistedGPS }

NF-BO-AllBusy ::=					INTEGER (0..31)

NF-BO-NoAICH ::=					INTEGER (0..31)

NF-BO-Mismatch ::=					INTEGER (0..127)

NS-BO-Busy ::=						INTEGER (0..63)

NS-IP ::=							INTEGER (0..28)

P-TMSI-and-RAI-GSM-MAP ::=			SEQUENCE {
	p-TMSI								P-TMSI-GSM-MAP,
	rai									RAI
}

PagingCause ::=						ENUMERATED {
										terminatingConversationalCall,
										terminatingStreamingCall,
										terminatingInteractiveCall,
										terminatingBackgroundCall,
										terminatingHighPrioritySignalling,
										terminatingLowPrioritySignalling,
										terminatingCauseUnknown,
										spare
 }

PagingRecord ::=					CHOICE {
	cn-Identity							SEQUENCE {
		pagingCause							PagingCause,
		cn-DomainIdentity					CN-DomainIdentity,
		cn-pagedUE-Identity					CN-PagedUE-Identity
	},
	utran-Identity						SEQUENCE {
		u-RNTI								U-RNTI,
		cn-OriginatedPage-connectedMode-UE	SEQUENCE {
			pagingCause							PagingCause,
			cn-DomainIdentity					CN-DomainIdentity,
			pagingRecordTypeID					PagingRecordTypeID
		}																	OPTIONAL
	}
}

PagingRecord2-r5 ::=				CHOICE {
	utran-SingleUE-Identity				SEQUENCE {
		u-RNTI								U-RNTI,
		cn-OriginatedPage-connectedMode-UE	SEQUENCE {
			pagingCause							PagingCause,
			cn-DomainIdentity					CN-DomainIdentity,
			pagingRecordTypeID					PagingRecordTypeID
		}																	OPTIONAL,
		rrc-ConnectionReleaseInformation		RRC-ConnectionReleaseInformation
	},
	utran-GroupIdentity						SEQUENCE ( SIZE (1 .. maxURNTI-Group) ) OF
												GroupIdentityWithReleaseInformation
}

PagingRecordList ::=				SEQUENCE (SIZE (1..maxPage1)) OF
										PagingRecord

PagingRecord2List-r5 ::=			SEQUENCE (SIZE (1..maxPage1)) OF
										PagingRecord2-r5

PDCP-Capability ::=					SEQUENCE {
	losslessSRNS-RelocationSupport		BOOLEAN,
	-- If present, the "maxHcContextSpace" in the IE "PDCP-Capability-r5-ext" overrides the
	-- "supported" value in this IE. The value in this IE may be used by a pre-REL-5 UTRAN.
	supportForRfc2507					CHOICE {
		notSupported						NULL,
		supported							MaxHcContextSpace
	}
}

PDCP-Capability-r4-ext ::=			SEQUENCE {
	supportForRfc3095				CHOICE {
		notSupported						NULL,
		supported							SEQUENCE {
			maxROHC-ContextSessions				MaxROHC-ContextSessions-r4	DEFAULT s16,
			reverseCompressionDepth				INTEGER (0..65535)			DEFAULT 0
		}
	}
}

PDCP-Capability-r5-ext ::=			SEQUENCE {
	supportForRfc3095ContextRelocation		BOOLEAN,
	maxHcContextSpace						MaxHcContextSpace-r5-ext	OPTIONAL
}

PDCP-Capability-r5-ext2 ::=			SEQUENCE {
	losslessDLRLC-PDUSizeChange			ENUMERATED { true }					OPTIONAL
}

PhysicalChannelCapability ::=		SEQUENCE {
		fddPhysChCapability					SEQUENCE {
			downlinkPhysChCapability			DL-PhysChCapabilityFDD,
			uplinkPhysChCapability				UL-PhysChCapabilityFDD
		}											OPTIONAL,
		-- tddPhysChCapability describes the 3.84Mcps TDD physical channel capability
		tddPhysChCapability					SEQUENCE {
			downlinkPhysChCapability			DL-PhysChCapabilityTDD,
			uplinkPhysChCapability				UL-PhysChCapabilityTDD
		}											OPTIONAL
}

-- PhysicalChannelCapability-LCR-r4 describes the 1.28Mcps TDD physical channel capability
PhysicalChannelCapability-LCR-r4 ::=		SEQUENCE {
		tdd128-PhysChCapability					SEQUENCE {
			downlinkPhysChCapability			DL-PhysChCapabilityTDD-LCR-r4,
			uplinkPhysChCapability				UL-PhysChCapabilityTDD-LCR-r4
		}											OPTIONAL
}

-- PhysicalChannelCapability-hspdsch-r5 describes the HS-PDSCH physical channel capability
PhysicalChannelCapability-hspdsch-r5 ::=		SEQUENCE {
	fdd-hspdsch										CHOICE {
		supported										SEQUENCE {
			hsdsch-physical-layer-category					HSDSCH-physical-layer-category,
			-- dummy and dummy2 are not used in this version of the specification, they should not
			-- be sent and if received they should be ignored.
			dummy											BOOLEAN,
			dummy2											BOOLEAN
		},
		unsupported										NULL
	},
	tdd384-hspdsch									CHOICE {
		supported										HSDSCH-physical-layer-category,
		unsupported										NULL
	},
	tdd128-hspdsch									CHOICE {
		supported										HSDSCH-physical-layer-category,
		unsupported										NULL
	}
}

PNBSCH-Allocation-r4 ::=				SEQUENCE {
		numberOfRepetitionsPerSFNPeriod	ENUMERATED {
											c2, c3, c4, c5, c6, c7, c8, c9, c10,
											c12, c14, c16, c18, c20, c24, c28, c32,
											c36, c40, c48, c56, c64, c72, c80  }
}

ProtocolErrorCause ::=				ENUMERATED {
										asn1-ViolationOrEncodingError,
										messageTypeNonexistent,
										messageNotCompatibleWithReceiverState,
										ie-ValueNotComprehended,
										informationElementMissing,
										messageExtensionNotComprehended,
										spare2, spare1 }

ProtocolErrorIndicator ::=			ENUMERATED {
										noError, errorOccurred }

ProtocolErrorIndicatorWithMoreInfo ::= 
									CHOICE {
	noError								NULL,
	errorOccurred						SEQUENCE {		
		rrc-TransactionIdentifier			RRC-TransactionIdentifier, 
		protocolErrorInformation			ProtocolErrorInformation
	}
}

ProtocolErrorMoreInformation ::=	SEQUENCE {
	diagnosticsType						CHOICE {
		type1								CHOICE {
			asn1-ViolationOrEncodingError		NULL,
			messageTypeNonexistent				NULL,
			messageNotCompatibleWithReceiverState
												IdentificationOfReceivedMessage,
			ie-ValueNotComprehended				IdentificationOfReceivedMessage,
			conditionalInformationElementError	IdentificationOfReceivedMessage,
			messageExtensionNotComprehended		IdentificationOfReceivedMessage,
			spare1								NULL, 
			spare2								NULL 
		},
		spare								NULL
	}
}

RadioFrequencyBandFDD ::=			ENUMERATED {
	-- fdd2100, fdd1900, fdd1800 correspond to Band I, Band II and Band III respectively
										fdd2100,
										fdd1900,
										fdd1800, 
										bandVI, 
										bandIV,
										bandV,
										bandVII,
										extension-indicator }

RadioFrequencyBandFDD2 ::=			ENUMERATED {
										bandVIII,
										bandIX,
										bandX,
										bandXI,
										bandXII,
										bandXIII,
										bandXIV,
										bandXV,
										bandXVI,
										bandXVII, 
										bandXVIII,
										bandXIX,
										bandXX,
										bandXXI,
										bandXXII,
										extension-indicator }

RadioFrequencyBandTDDList ::=		ENUMERATED {
										a, b, c, ab, ac, bc, abc, spare }

RadioFrequencyBandTDD ::=			ENUMERATED {a, b, c, spare}

RadioFrequencyBandGSM ::=			ENUMERATED {
										gsm450,
										gsm480,
										gsm850,
										gsm900P,
										gsm900E,
										gsm1800,
										gsm1900,
										spare9, spare8, spare7, spare6, spare5,
										spare4, spare3, spare2, spare1}

Rb-timer-indicator ::=				SEQUENCE {
	t314-expired						BOOLEAN,
	t315-expired						BOOLEAN }

Re-EstablishmentTimer ::=			ENUMERATED {
										useT314, useT315
}

RedirectionInfo ::=					CHOICE {
	frequencyInfo						FrequencyInfo,
	interRATInfo						InterRATInfo
}

RedirectionInfo-r6 ::=				CHOICE {
	frequencyInfo						FrequencyInfo,
	interRATInfo						InterRATInfo-r6
}

RejectionCause ::=					ENUMERATED {
										congestion,
										unspecified }

ReleaseCause ::=					ENUMERATED {
										normalEvent,
										unspecified,
										pre-emptiveRelease,
										congestion,
										re-establishmentReject,
										directedsignallingconnectionre-establishment,
										userInactivity,
										spare }

RF-Capability ::=					SEQUENCE {
		fddRF-Capability				SEQUENCE {
			ue-PowerClass					UE-PowerClass,
			txRxFrequencySeparation			TxRxFrequencySeparation
		}									OPTIONAL,
		tddRF-Capability							SEQUENCE {
			ue-PowerClass				UE-PowerClass,
			radioFrequencyTDDBandList	RadioFrequencyBandTDDList,
			chipRateCapability			ChipRateCapability
		}									OPTIONAL
}

RF-Capability-r4-ext ::=				SEQUENCE {
		tddRF-Capability							SEQUENCE {
			ue-PowerClass				UE-PowerClass,
			radioFrequencyBandTDDList	RadioFrequencyBandTDDList,
			chipRateCapability			ChipRateCapability
		}									OPTIONAL
}

RLC-Capability ::=					SEQUENCE {
	-- If present, the "totalRLC-AM-BufferSize" in the IE "RLC-Capability-r5-ext" overrides the
	-- corresponding value in this IE. The value in this IE may be used by a pre-REL-5 UTRAN.
	totalRLC-AM-BufferSize				TotalRLC-AM-BufferSize,
	maximumRLC-WindowSize				MaximumRLC-WindowSize,
	maximumAM-EntityNumber				MaximumAM-EntityNumberRLC-Cap
}

RLC-Capability-r5-ext ::=					SEQUENCE {
	totalRLC-AM-BufferSize				TotalRLC-AM-BufferSize-r5-ext		OPTIONAL
}

RRC-ConnectionReleaseInformation ::=	CHOICE {
	noRelease								NULL,
	release									SEQUENCE {
		releaseCause							ReleaseCause
	}
}

RRC-MessageSequenceNumber ::=		INTEGER (0..15)


RRC-MessageSequenceNumberList ::=	SEQUENCE (SIZE (4..5)) OF
										RRC-MessageSequenceNumber

RRC-StateIndicator ::=				ENUMERATED {
										cell-DCH, cell-FACH, cell-PCH, ura-PCH }

RRC-TransactionIdentifier ::=		INTEGER (0..3)

S-RNTI ::=							BIT STRING (SIZE (20))

S-RNTI-2 ::=						BIT STRING (SIZE (10))

SecurityCapability ::=				SEQUENCE {
	cipheringAlgorithmCap				BIT STRING {
										-- For each bit value 0 means false/ not supported
											spare15(0),
											spare14(1),
											spare13(2),
											spare12(3),
											spare11(4),
											spare10(5),
											spare9(6),
											spare8(7),
											spare7(8),
											spare6(9),
											spare5(10),
											spare4(11),
											spare3(12),
											spare2(13),
											uea1(14),
											uea0(15)
											}	(SIZE (16)),
	integrityProtectionAlgorithmCap		BIT STRING {
										-- For each bit value 0 means false/ not supported
											spare15(0),
											spare14(1),
											spare13(2),
											spare12(3),
											spare11(4),
											spare10(5),
											spare9(6),
											spare8(7),
											spare7(8),
											spare6(9),
											spare5(10),
											spare4(11),
											spare3(12),
											spare2(13),
											uia1(14),
											spare0(15)
										 	} 	 (SIZE (16))
}

Serving-HSDSCH-CellInformation ::=		SEQUENCE {
	deltaACK						DeltaACK					OPTIONAL,
	deltaNACK						DeltaNACK					OPTIONAL,
	harq-Preamble-Mode				HARQ-Preamble-Mode,
	primaryCPICH-Info				PrimaryCPICH-Info			OPTIONAL,
	dl-hspdsch-Information			DL-HSPDSCH-Information		OPTIONAL,
	harqInfo						HARQ-Info 					OPTIONAL,
	mac-hsResetIndicator			ENUMERATED { true }			OPTIONAL 
}

SimultaneousSCCPCH-DPCH-Reception ::= CHOICE {
	notSupported						NULL,
	supported							SEQUENCE {
		maxNoSCCPCH-RL						MaxNoSCCPCH-RL,
		-- simultaneousSCCPCH-DPCH-DPDCH-Reception is applicable only if 
		-- the IE Support of PDSCH = TRUE
		-- Note: the reference to DPDCH in the element name below is incorrect (see tabular). The 
		-- name is not changed, to keep it aligned with R99.
		simultaneousSCCPCH-DPCH-DPDCH-Reception		BOOLEAN
	}
}

SRNC-Identity ::=					BIT STRING (SIZE (12))


START-Value ::=						BIT STRING (SIZE (20))

STARTList ::=						SEQUENCE (SIZE (1..maxCNdomains)) OF
										STARTSingle

STARTSingle ::=						SEQUENCE {
	cn-DomainIdentity					CN-DomainIdentity,
	start-Value							START-Value			
}

CapabilityUpdateRequirement-r5 ::=	SEQUENCE {
	ue-RadioCapabilityFDDUpdateRequirement-FDD	BOOLEAN,
	ue-RadioCapabilityTDDUpdateRequirement-TDD384	BOOLEAN,
	ue-RadioCapabilityTDDUpdateRequirement-TDD128	BOOLEAN,
	systemSpecificCapUpdateReqList		SystemSpecificCapUpdateReqList-r5		OPTIONAL
}

SystemSpecificCapUpdateReq ::=		ENUMERATED {
										gsm }

SystemSpecificCapUpdateReq-v590ext ::=		ENUMERATED {
										geranIu }

SystemSpecificCapUpdateReq-r5 ::=		ENUMERATED {
										gsm, geranIu }

SystemSpecificCapUpdateReqList ::= SEQUENCE (SIZE (1..maxSystemCapability)) OF 
										SystemSpecificCapUpdateReq

SystemSpecificCapUpdateReqList-r5 ::= SEQUENCE (SIZE (1..maxSystemCapability)) OF 
										SystemSpecificCapUpdateReq-r5

T-300 ::=							ENUMERATED {
										ms100, ms200, ms400, ms600, ms800,
										ms1000, ms1200, ms1400, ms1600,
										ms1800, ms2000, ms3000, ms4000,
										ms6000, ms8000 }

T-301 ::=							ENUMERATED {
										ms100, ms200, ms400, ms600, ms800,
										ms1000, ms1200, ms1400, ms1600,
										ms1800, ms2000, ms3000, ms4000,
										ms6000, ms8000, spare }

T-302 ::=							ENUMERATED {
										ms100, ms200, ms400, ms600, ms800,
										ms1000, ms1200, ms1400, ms1600,
										ms1800, ms2000, ms3000, ms4000,
										ms6000, ms8000, spare }

T-304 ::=							ENUMERATED {
										ms100, ms200, ms400, 
										ms1000, ms2000, spare3, spare2, spare1 }

T-305 ::=							ENUMERATED {
										noUpdate, m5, m10, m30,
										m60, m120, m360, m720 }

T-307 ::=							ENUMERATED {
										s5, s10, s15, s20,
										s30, s40, s50, spare }

T-308 ::=							ENUMERATED {
										ms40, ms80, ms160, ms320 }

T-309 ::=							INTEGER (1..8)

T-310 ::=							ENUMERATED {
										ms40, ms80, ms120, ms160,
										ms200, ms240, ms280, ms320 }

T-311 ::=							ENUMERATED {
										ms250, ms500, ms750, ms1000,
										ms1250, ms1500, ms1750, ms2000 }

-- The value 0 for T-312 is not used in this version of the specification
T-312 ::=							INTEGER (0..15)

T-313 ::=							INTEGER (0..15)

T-314 ::=							ENUMERATED {
										s0, s2, s4, s6, s8,
										s12, s16, s20 }

T-315 ::=							ENUMERATED {
										s0, s10, s30, s60, s180,
										s600, s1200, s1800 }

T-316 ::=							ENUMERATED {
										s0, s10, s20, s30, s40,
										s50, s-inf, spare }

-- All the values are changed to "infinity" in Rel-5
T-317 ::=							ENUMERATED {
										infinity0,  infinity1,  infinity2, infinity3, infinity4,
										infinity5, infinity6, infinity7}

T-318 ::=							ENUMERATED {
										ms250, ms500, ms750, ms1000, ms1250, ms1500,
										ms1750, ms2000, ms3000, ms4000, ms6000, ms8000,
										ms10000, ms12000, ms16000 }

T-CPCH ::=							ENUMERATED {
										ct0, ct1 }

TMSI-and-LAI-GSM-MAP ::=			SEQUENCE {
	tmsi								TMSI-GSM-MAP,
	lai									LAI
}

TMSI-DS-41 ::=						OCTET STRING (SIZE (2..17))

TotalRLC-AM-BufferSize ::=			ENUMERATED {
										dummy, kb10, kb50, kb100,
										kb150, kb500, kb1000, spare }

TotalRLC-AM-BufferSize-r5-ext ::=	ENUMERATED {
										kb200, kb300, kb400, kb750 }

-- Actual value TransmissionProbability = IE value * 0.125
TransmissionProbability ::=			INTEGER (1..8)

TransportChannelCapability ::=		SEQUENCE {
	dl-TransChCapability				DL-TransChCapability,
	ul-TransChCapability				UL-TransChCapability	
}

TurboSupport ::=					CHOICE {
	notSupported						NULL,
	supported							MaxNoBits
}

-- Values defined as spare shall not be sent in this version of the protocol. If a spare value is
-- received, it should be interpreted as 'default-RxTX-sparation'.
TxRxFrequencySeparation ::=			ENUMERATED {
										default-TxRx-separation, spare2, spare1 }

U-RNTI ::=							SEQUENCE {
	srnc-Identity						SRNC-Identity,
	s-RNTI								S-RNTI
}

U-RNTI-Group ::=					CHOICE {
-- TABULAR: not following the tabular strictly, but this will most likely save bits
	all									NULL,
	u-RNTI-BitMaskIndex-b1				BIT STRING (SIZE (31)),
	u-RNTI-BitMaskIndex-b2				BIT STRING (SIZE (30)),
	u-RNTI-BitMaskIndex-b3				BIT STRING (SIZE (29)),
	u-RNTI-BitMaskIndex-b4				BIT STRING (SIZE (28)),
	u-RNTI-BitMaskIndex-b5				BIT STRING (SIZE (27)),
	u-RNTI-BitMaskIndex-b6				BIT STRING (SIZE (26)),
	u-RNTI-BitMaskIndex-b7				BIT STRING (SIZE (25)),
	u-RNTI-BitMaskIndex-b8				BIT STRING (SIZE (24)),
	u-RNTI-BitMaskIndex-b9				BIT STRING (SIZE (23)),
	u-RNTI-BitMaskIndex-b10				BIT STRING (SIZE (22)),
	u-RNTI-BitMaskIndex-b11				BIT STRING (SIZE (21)),
	u-RNTI-BitMaskIndex-b12				BIT STRING (SIZE (20)),
	u-RNTI-BitMaskIndex-b13				BIT STRING (SIZE (19)),
	u-RNTI-BitMaskIndex-b14				BIT STRING (SIZE (18)),
	u-RNTI-BitMaskIndex-b15				BIT STRING (SIZE (17)),
	u-RNTI-BitMaskIndex-b16				BIT STRING (SIZE (16)),
	u-RNTI-BitMaskIndex-b17				BIT STRING (SIZE (15)),
	u-RNTI-BitMaskIndex-b18				BIT STRING (SIZE (14)),
	u-RNTI-BitMaskIndex-b19				BIT STRING (SIZE (13)),
	u-RNTI-BitMaskIndex-b20				BIT STRING (SIZE (12)),
	u-RNTI-BitMaskIndex-b21				BIT STRING (SIZE (11)),
	u-RNTI-BitMaskIndex-b22				BIT STRING (SIZE (10)),
	u-RNTI-BitMaskIndex-b23				BIT STRING (SIZE (9)),
	u-RNTI-BitMaskIndex-b24				BIT STRING (SIZE (8)),
	u-RNTI-BitMaskIndex-b25				BIT STRING (SIZE (7)),
	u-RNTI-BitMaskIndex-b26				BIT STRING (SIZE (6)),
	u-RNTI-BitMaskIndex-b27				BIT STRING (SIZE (5)),
	u-RNTI-BitMaskIndex-b28				BIT STRING (SIZE (4)),
	u-RNTI-BitMaskIndex-b29				BIT STRING (SIZE (3)),
	u-RNTI-BitMaskIndex-b30				BIT STRING (SIZE (2)),
	u-RNTI-BitMaskIndex-b31				BIT STRING (SIZE (1))
}

U-RNTI-Short ::=					SEQUENCE {
	srnc-Identity						SRNC-Identity,
	s-RNTI-2							S-RNTI-2
}

UE-CapabilityContainer-IEs ::= 			SEQUENCE {
-- Container for transparent transfer of capability information not related to
-- features for which early implementation is desired
		ue-RadioAccessCapability-v6xyext	UE-RadioAccessCapability-v6xyext,
		ue-RATSpecificCapability-v6xyext	InterRAT-UE-RadioAccessCapability-v6xyext	OPTIONAL,
		nonCriticalExtensions				SEQUENCE {}		OPTIONAL
}

UE-ConnTimersAndConstants ::=		SEQUENCE {
-- Optional is used also for parameters for which the default value is the last one read in SIB1
-- t-301 and n-301 should not be used by the UE in this version of the specification
	t-301								T-301								DEFAULT ms2000,
	n-301								N-301								DEFAULT 2,
	t-302								T-302								DEFAULT ms4000,
	n-302								N-302								DEFAULT 3,
	t-304								T-304								DEFAULT ms2000,
	n-304								N-304								DEFAULT 2,
	t-305								T-305								DEFAULT m30,
	t-307								T-307								DEFAULT s30,
	t-308								T-308								DEFAULT ms160,
	t-309								T-309								DEFAULT 5,
	t-310								T-310								DEFAULT ms160,
	n-310								N-310								DEFAULT 4,
	t-311								T-311								DEFAULT ms2000,
	t-312								T-312								DEFAULT 1,
	-- n-312 shall be ignored if n-312 in UE-ConnTimersAndConstants-v3a0ext is present, and the
	-- value of that element shall be used instead.
	n-312								N-312								DEFAULT s1,
	t-313								T-313								DEFAULT 3,
	n-313								N-313								DEFAULT s20,
	t-314								T-314								DEFAULT s12,
	t-315								T-315								DEFAULT s180,
	-- n-315 shall be ignored if n-315 in UE-ConnTimersAndConstants-v3a0ext is present, and the
	-- value of that element shall be used instead.
	n-315								N-315								DEFAULT s1,
	t-316								T-316								DEFAULT s30,
	t-317								T-317								DEFAULT infinity4
}

UE-ConnTimersAndConstants-v3a0ext ::=		SEQUENCE {
	n-312								N-312ext								OPTIONAL,
	n-315								N-315ext								OPTIONAL
}

UE-ConnTimersAndConstants-r5 ::=		SEQUENCE {
-- Optional is used also for parameters for which the default value is the last one read in SIB1
-- t-301 and n-301 should not be used by the UE in this version of the specification
	t-301								T-301								DEFAULT ms2000,
	n-301								N-301								DEFAULT 2,
	t-302								T-302								DEFAULT ms4000,
	n-302								N-302								DEFAULT 3,
	t-304								T-304								DEFAULT ms2000,
	n-304								N-304								DEFAULT 2,
	t-305								T-305								DEFAULT m30,
	t-307								T-307								DEFAULT s30,
	t-308								T-308								DEFAULT ms160,
	t-309								T-309								DEFAULT 5,
	t-310								T-310								DEFAULT ms160,
	n-310								N-310								DEFAULT 4,
	t-311								T-311								DEFAULT ms2000,
	t-312								T-312								DEFAULT 1,
	n-312								N-312-r5							DEFAULT s1,
	t-313								T-313								DEFAULT 3,
	n-313								N-313								DEFAULT s20,
	t-314								T-314								DEFAULT s12,
	t-315								T-315								DEFAULT s180,
	n-315								N-315-r5							DEFAULT s1,
	t-316								T-316								DEFAULT s30,
	t-317								T-317								DEFAULT infinity4
}

UE-IdleTimersAndConstants ::=		SEQUENCE {
	t-300								T-300,
	n-300								N-300,
	t-312								T-312,
	-- n-312 shall be ignored if n-312 in UE-IdleTimersAndConstants-v3a0ext is present, and the
	-- value of that element shall be used instead.
	n-312								N-312	
}

UE-IdleTimersAndConstants-v3a0ext ::=		SEQUENCE {
	n-312								N-312ext								OPTIONAL
}

UE-MultiModeRAT-Capability ::=		SEQUENCE {
	multiRAT-CapabilityList				MultiRAT-Capability,
	multiModeCapability					MultiModeCapability
}

UE-PowerClass ::=					INTEGER (1..4)

UE-PowerClassExt ::=				ENUMERATED {class1, class2, class3, class4,
										 spare4, spare3, spare2, spare1 }

UE-RadioAccessCapability ::=		SEQUENCE {
	-- UE-RadioAccessCapability is compatible with R99, although accessStratumReleaseIndicator 
	-- is removed from this IE, since its encoding did not does in bits. The 
	-- accessStratumReleaseIndicator is provided in the relevant REL-4 extension IEs.
	pdcp-Capability						PDCP-Capability,
	rlc-Capability						RLC-Capability,
	transportChannelCapability			TransportChannelCapability,
	rf-Capability						RF-Capability,
	physicalChannelCapability			PhysicalChannelCapability,
	ue-MultiModeRAT-Capability			UE-MultiModeRAT-Capability,
	securityCapability					SecurityCapability,
	ue-positioning-Capability			UE-Positioning-Capability,
	measurementCapability				MeasurementCapability		OPTIONAL
}

UE-RadioAccessCapabilityInfo ::=		SEQUENCE {
	ue-RadioAccessCapability			UE-RadioAccessCapability,
	ue-RadioAccessCapability-v370ext	UE-RadioAccessCapability-v370ext
}

UE-RadioAccessCapability-v370ext ::=	SEQUENCE {
	ue-RadioAccessCapabBandFDDList		UE-RadioAccessCapabBandFDDList
}

UE-RadioAccessCapability-v380ext ::=	SEQUENCE {
	ue-PositioningCapabilityExt-v380		UE-PositioningCapabilityExt-v380
}

UE-RadioAccessCapability-v3a0ext ::=	SEQUENCE {
	ue-PositioningCapabilityExt-v3a0		UE-PositioningCapabilityExt-v3a0
}

UE-RadioAccessCapability-v3g0ext ::=	SEQUENCE {
	ue-PositioningCapabilityExt-v3g0		UE-PositioningCapabilityExt-v3g0
}

UE-RadioAccessCapability-v650ext ::=	SEQUENCE {
	ue-RadioAccessCapabBandFDDList2		UE-RadioAccessCapabBandFDDList2,
	-- This IE shall be included if the UE also supports Band I-VII
	ue-RadioAccessCapabBandFDDList-ext	UE-RadioAccessCapabBandFDDList-ext	OPTIONAL
}

UE-RadioAccessCapability-v6xyext ::= SEQUENCE {
		physicalchannelcapability-edch	PhysicalChannelCapability-edch-r6,
		-- TABULAR: device-Type is MD in tabular description
		-- Default value is DoesBenefitFromBatteryConsumptionOptimisation
		deviceType		ENUMERATED { doesNotBenefitFromBatteryConsumptionOptimisation }	OPTIONAL
}

UE-RadioAccessCapabBandFDDList2 ::=	SEQUENCE (SIZE (1..maxFreqBandsFDD)) OF
											UE-RadioAccessCapabBandFDD2

UE-RadioAccessCapabBandFDD2 ::=	SEQUENCE {
	radioFrequencyBandFDD2				RadioFrequencyBandFDD2,
	fddRF-Capability					SEQUENCE {
		ue-PowerClass						UE-PowerClassExt,
		txRxFrequencySeparation				TxRxFrequencySeparation
	}		OPTIONAL,
	measurementCapability2				MeasurementCapabilityExt2
}


UE-PositioningCapabilityExt-v380 ::=	SEQUENCE {
	rx-tx-TimeDifferenceType2Capable		BOOLEAN
}

UE-PositioningCapabilityExt-v3a0 ::=	SEQUENCE {
	validity-CellPCH-UraPCH					ENUMERATED { true }
}

UE-PositioningCapabilityExt-v3g0 ::=	SEQUENCE {
	sfn-sfnType2Capability				ENUMERATED { true }
}

UE-RadioAccessCapabBandFDDList ::=	SEQUENCE (SIZE (1..maxFreqBandsFDD)) OF
											UE-RadioAccessCapabBandFDD

UE-RadioAccessCapabBandFDDList-ext ::= SEQUENCE (SIZE (1..maxFreqBandsFDD)) OF 
										UE-RadioAccessCapabBandFDD-ext

UE-RadioAccessCapabBandFDD ::=	SEQUENCE{
	radioFrequencyBandFDD				RadioFrequencyBandFDD,
	fddRF-Capability					SEQUENCE {
		ue-PowerClass						UE-PowerClassExt,
		txRxFrequencySeparation				TxRxFrequencySeparation
	}																OPTIONAL,
	measurementCapability				MeasurementCapabilityExt
}

UE-RadioAccessCapabBandFDD-ext ::= SEQUENCE {
	radioFrequencyBandFDD				RadioFrequencyBandFDD,
	compressedModeMeasCapabFDDList-ext	CompressedModeMeasCapabFDDList-ext
}

UE-RadioAccessCapability-v4b0ext ::=	SEQUENCE {
	pdcp-Capability-r4-ext				PDCP-Capability-r4-ext,
	tdd-CapabilityExt					SEQUENCE {
		rf-Capability						RF-Capability-r4-ext,
		physicalChannelCapability-LCR		PhysicalChannelCapability-LCR-r4,
		measurementCapability-r4-ext		MeasurementCapability-r4-ext
	}											OPTIONAL,
	-- IE " AccessStratumReleaseIndicator" is not needed in RRC CONNECTION SETUP COMPLETE
	accessStratumReleaseIndicator				AccessStratumReleaseIndicator 	OPTIONAL
}

UE-RadioAccessCapabilityComp ::= SEQUENCE {
	totalAM-RLCMemoryExceeds10kB			BOOLEAN,
	rf-CapabilityComp						RF-CapabilityComp
}

UE-RadioAccessCapabilityComp-ext ::= SEQUENCE {
	rf-CapabilityFDDComp				RF-CapabBandListFDDComp-ext
}

RF-CapabilityComp ::= SEQUENCE {
	fdd 					CHOICE {
		notSupported					NULL,
		supported						RF-CapabBandListFDDComp
	},
	tdd384-RF-Capability	CHOICE {
		notSupported					NULL,
		supported						RadioFrequencyBandTDDList
	},
	tdd128-RF-Capability	CHOICE {
		notSupported					NULL,
		supported						RadioFrequencyBandTDDList
	}
}

-- NOTE: This IE defines the supported TX/RX frequency separation for the respective supported
-- frequency band. Values defined as spare shall not be sent in this version of the protocol.
-- If a spare value is received, it should be interpreted as 'default-RxTX-sparation'.
RF-CapabBandFDDComp ::=				ENUMERATED { notSupported,
										default-TxRx-separation, spare2, spare1 }

RF-CapabBandListFDDComp ::=			SEQUENCE (SIZE (1..maxFreqBandsFDD)) OF
	-- The first entry corresponds with the first value of IE RadioFrequencyBandFDD,
	-- fdd2100, and so on. No more than seven entries should be included in this IE. The
	-- 8'th entry, if present, shall be ignored.
	-- An extension of this IE may be provided using the IE 'RF-CapabBandListFDDComp-ext'.
	RF-CapabBandFDDComp

RF-CapabBandListFDDComp-ext ::=		SEQUENCE (SIZE (1..maxFreqBandsFDD-ext)) OF
	-- The first entry corresponds with the first value of IE RadioFrequencyBandFDD2,
	-- bandVIII, and so on.
	RF-CapabBandFDDComp

UE-RadioAccessCapability-v590ext ::=	SEQUENCE {
	dl-CapabilityWithSimultaneousHS-DSCHConfig	DL-CapabilityWithSimultaneousHS-DSCHConfig	OPTIONAL,
	pdcp-Capability-r5-ext				PDCP-Capability-r5-ext,
	rlc-Capability-r5-ext				RLC-Capability-r5-ext,
	physicalChannelCapability			PhysicalChannelCapability-hspdsch-r5,
	multiModeRAT-Capability-v590ext		MultiModeRAT-Capability-v590ext
}

UE-RadioAccessCapability-v5c0ext ::= SEQUENCE {
	pdcp-Capability-r5-ext2				PDCP-Capability-r5-ext2
}

UE-RadioAccessCapability-v680ext ::= SEQUENCE {
	multiModeRAT-Capability-v680ext		MultiModeRAT-Capability-v680ext
}

UL-PhysChCapabilityFDD ::=			SEQUENCE {
	maxNoDPDCH-BitsTransmitted			MaxNoDPDCH-BitsTransmitted,
	-- dummy is not used in this version of the specification and
	-- it should be ignored by the receiver.
	dummy								BOOLEAN	
}

UL-PhysChCapabilityFDD-r6 ::=			SEQUENCE {
	maxNoDPDCH-BitsTransmitted				MaxNoDPDCH-BitsTransmitted,
	physicalchannelcapability-edch			PhysicalChannelCapability-edch-r6
}

UL-PhysChCapabilityTDD ::=			SEQUENCE {
	maxTS-PerFrame						MaxTS-PerFrame,
	maxPhysChPerTimeslot				MaxPhysChPerTimeslot,
	minimumSF							MinimumSF-UL,
	supportOfPUSCH						BOOLEAN	
}

UL-PhysChCapabilityTDD-LCR-r4 ::=	SEQUENCE {
	maxTS-PerSubFrame					MaxTS-PerSubFrame-r4,
	maxPhysChPerTimeslot				MaxPhysChPerTimeslot,
	minimumSF							MinimumSF-UL,
	supportOfPUSCH						BOOLEAN,
	supportOf8PSK						BOOLEAN
}

PhysicalChannelCapability-edch-r6 ::=	SEQUENCE {
	fdd-edch								CHOICE {
		supported								SEQUENCE {
			edch-PhysicalLayerCategory				INTEGER (1..16)
		},
		unsupported								NULL
	}
}

UL-TransChCapability ::=			SEQUENCE {
	maxNoBitsTransmitted				MaxNoBits,
	maxConvCodeBitsTransmitted			MaxNoBits,
	turboEncodingSupport				TurboSupport,
	maxSimultaneousTransChs				MaxSimultaneousTransChsUL,
	modeSpecificInfo					CHOICE {
		fdd									NULL,
		tdd									SEQUENCE {
			maxSimultaneousCCTrCH-Count			MaxSimultaneousCCTrCH-Count
		}
	},
	maxTransmittedBlocks				MaxTransportBlocksUL,
	maxNumberOfTFC						MaxNumberOfTFC-UL,
	maxNumberOfTF						MaxNumberOfTF
}

UE-Positioning-Capability ::=		SEQUENCE {
	standaloneLocMethodsSupported			BOOLEAN,
	ue-BasedOTDOA-Supported					BOOLEAN,
	networkAssistedGPS-Supported			NetworkAssistedGPS-Supported,
	supportForUE-GPS-TimingOfCellFrames		BOOLEAN,
	supportForIPDL							BOOLEAN
}

UE-SecurityInformation ::=			SEQUENCE {
	start-CS							START-Value
}

UE-SecurityInformation2 ::=			SEQUENCE {
	start-PS							START-Value
}

URA-UpdateCause ::=					ENUMERATED { 
										changeOfURA, 
										periodicURAUpdate, 
										dummy,
										spare1 }

UTRAN-DRX-CycleLengthCoefficient ::= INTEGER (3..9)

WaitTime ::=						INTEGER (0..15)

-- ***************************************************
--
--     RADIO BEARER INFORMATION ELEMENTS (10.3.4)
--
-- ***************************************************

AlgorithmSpecificInfo ::=			CHOICE {
	rfc2507-Info						RFC2507-Info
}

AlgorithmSpecificInfo-r4 ::=		CHOICE {
	rfc2507-Info						RFC2507-Info,
	rfc3095-Info						RFC3095-Info-r4
}

CID-InclusionInfo-r4 ::=			ENUMERATED {
										pdcp-Header,
										rfc3095-PacketFormat }

-- Upper limit of COUNT-C is 2^32 - 1
COUNT-C ::=							INTEGER (0..4294967295)

-- Upper limit of COUNT-C-MSB is 2^25 - 1
COUNT-C-MSB ::=						INTEGER (0..33554431)

DefaultConfigIdentity ::=			INTEGER (0..10)

DefaultConfigIdentity-r4 ::=		INTEGER (0..12)

DefaultConfigIdentity-r5 ::=		INTEGER (0..13)

DefaultConfigMode ::=				ENUMERATED {
										fdd,
										tdd }

DDI ::=								INTEGER (0..62)

DL-AM-RLC-Mode ::=					SEQUENCE {
	inSequenceDelivery					BOOLEAN,
	receivingWindowSize					ReceivingWindowSize,
	dl-RLC-StatusInfo					DL-RLC-StatusInfo
}

DL-AM-RLC-Mode-r5 ::=					SEQUENCE {
	dl-RLC-PDU-size						OctetModeRLC-SizeInfoType1,
	inSequenceDelivery					BOOLEAN,
	receivingWindowSize					ReceivingWindowSize,
	dl-RLC-StatusInfo					DL-RLC-StatusInfo
}

DL-CounterSynchronisationInfo ::=		SEQUENCE {
	rB-WithPDCP-InfoList					RB-WithPDCP-InfoList	OPTIONAL
}

DL-CounterSynchronisationInfo-r5 ::=	SEQUENCE {
	rb-WithPDCP-InfoList					RB-WithPDCP-InfoList			OPTIONAL,
	rb-PDCPContextRelocationList			RB-PDCPContextRelocationList	OPTIONAL
}

DL-LogicalChannelMapping ::=		SEQUENCE {
	-- TABULAR: DL-TransportChannelType contains TransportChannelIdentity as well.
	dl-TransportChannelType				DL-TransportChannelType,
	logicalChannelIdentity				LogicalChannelIdentity				OPTIONAL
}

DL-LogicalChannelMapping-r5 ::=		SEQUENCE {
	-- TABULAR: DL-TransportChannelType contains TransportChannelIdentity as well.
	dl-TransportChannelType				DL-TransportChannelType-r5,
	logicalChannelIdentity				LogicalChannelIdentity				OPTIONAL
}

DL-LogicalChannelMappingList ::=	SEQUENCE (SIZE (1..maxLoCHperRLC)) OF
										DL-LogicalChannelMapping

DL-LogicalChannelMappingList-r5 ::=	SEQUENCE (SIZE (1..maxLoCHperRLC)) OF
										DL-LogicalChannelMapping-r5

DL-Reception-Window-Size-r6 ::=		ENUMERATED { size32, size48, size64, size80, size96, size112 }

DL-RFC3095-r4 ::=					SEQUENCE {
	cid-InclusionInfo					CID-InclusionInfo-r4,
	max-CID								INTEGER (1..16383)					DEFAULT 15,
	reverseDecompressionDepth			INTEGER (0..65535)					DEFAULT 0
}

DL-RLC-Mode ::=						CHOICE {
	dl-AM-RLC-Mode						DL-AM-RLC-Mode,
	dl-UM-RLC-Mode						NULL,
	dl-TM-RLC-Mode						DL-TM-RLC-Mode
}

DL-RLC-Mode-r5 ::=					CHOICE {
	dl-AM-RLC-Mode						DL-AM-RLC-Mode-r5,
	dl-UM-RLC-Mode						DL-UM-RLC-Mode-r5,
	dl-TM-RLC-Mode						DL-TM-RLC-Mode
}

DL-RLC-Mode-r6 ::=					CHOICE {
	dl-AM-RLC-Mode						DL-AM-RLC-Mode-r5,
	dl-UM-RLC-Mode						DL-UM-RLC-Mode-r6,
	dl-TM-RLC-Mode						DL-TM-RLC-Mode
}

DL-RLC-StatusInfo ::=				SEQUENCE {
	timerStatusProhibit					TimerStatusProhibit					OPTIONAL,
	-- dummy is not used in this version of the specification, it should not be sent 
	-- and if received they should be ignored.
	dummy							TimerEPC							OPTIONAL,
	missingPDU-Indicator					BOOLEAN,
	timerStatusPeriodic					TimerStatusPeriodic					OPTIONAL
}

DL-TM-RLC-Mode ::=					SEQUENCE {
	segmentationIndication					BOOLEAN
}

DL-TransportChannelType ::=			CHOICE {
	dch									TransportChannelIdentity,
	fach								NULL,
	-- The choice dsch should not be used in FDD mode, and if received
	-- the UE behaviour is unspecified.
	dsch								TransportChannelIdentity,
	-- The choice dch-and-dsch should not be used in FDD mode, and if received the UE
	-- behaviour is unspecified
	dch-and-dsch						TransportChannelIdentityDCHandDSCH
}

DL-TransportChannelType-r5 ::=			CHOICE {
	dch									TransportChannelIdentity,
	fach								NULL,
	-- The choice dsch should not be used in FDD mode, and if received
	-- the UE behaviour is unspecified.
	dsch								TransportChannelIdentity,
	-- The choice dch-and-dsch should not be used in FDD mode, and if received the UE 
	-- behaviour is unspecified
	dch-and-dsch						TransportChannelIdentityDCHandDSCH,
	hsdsch								MAC-d-FlowIdentity,
	dch-and-hsdsch						MAC-d-FlowIdentityDCHandHSDSCH
}

DL-UM-RLC-LI-size ::=					ENUMERATED {
										size7, size15 }

DL-UM-RLC-Mode-r5 ::=					SEQUENCE {
	dl-UM-RLC-LI-size					DL-UM-RLC-LI-size
}

DL-UM-RLC-Mode-r6 ::=				SEQUENCE {
	dl-UM-RLC-LI-size					DL-UM-RLC-LI-size,
	dl-Reception-Window-Size			DL-Reception-Window-Size-r6			OPTIONAL
}

ExpectReordering ::=				ENUMERATED {
										reorderingNotExpected,
										reorderingExpected }

ExplicitDiscard ::=					SEQUENCE {
	timerMRW							TimerMRW,
	timerDiscard						TimerDiscard,
	maxMRW								MaxMRW
}

HeaderCompressionInfo ::=			SEQUENCE {
	algorithmSpecificInfo				AlgorithmSpecificInfo
}

HeaderCompressionInfoList ::=		SEQUENCE (SIZE (1..maxPDCPAlgoType)) OF
										HeaderCompressionInfo

HeaderCompressionInfo-r4 ::=		SEQUENCE {
	algorithmSpecificInfo				AlgorithmSpecificInfo-r4
}

HeaderCompressionInfoList-r4 ::=	SEQUENCE (SIZE (1..maxPDCPAlgoType)) OF
										HeaderCompressionInfo-r4

LogicalChannelIdentity ::=			INTEGER (1..15)

LosslessSRNS-RelocSupport ::=		CHOICE {
	supported							MaxPDCP-SN-WindowSize,
	notSupported						NULL
}

MAC-d-HFN-initial-value ::=			BIT STRING (SIZE (24))

MAC-LogicalChannelPriority ::= 		INTEGER (1..8)

MaxDAT ::=							ENUMERATED {
										dat1, dat2, dat3, dat4, dat5, dat6,
										dat7, dat8, dat9, dat10, dat15, dat20,
										dat25, dat30, dat35, dat40 }

MaxDAT-Retransmissions ::=			SEQUENCE {
	maxDAT								MaxDAT,
	timerMRW							TimerMRW,
	maxMRW								MaxMRW
}

MaxMRW ::=							ENUMERATED {
										mm1, mm4, mm6, mm8, mm12, mm16,
										mm24, mm32 }

MaxPDCP-SN-WindowSize ::=			ENUMERATED {
										sn255, sn65535 }

MaxRST ::=							ENUMERATED {
										rst1, rst4, rst6, rst8, rst12,
										rst16, rst24, rst32 }

NoExplicitDiscard ::=				ENUMERATED {
										dt10, dt20, dt30, dt40, dt50,
										dt60, dt70, dt80, dt90, dt100 }

PDCP-Info ::=						SEQUENCE {
	losslessSRNS-RelocSupport			LosslessSRNS-RelocSupport			OPTIONAL,
	-- TABULAR: pdcp-PDU-Header is MD in the tabular format and it can be encoded
	-- in one bit, so the OPTIONAL is removed for compactness.
	pdcp-PDU-Header						PDCP-PDU-Header,
	headerCompressionInfoList			HeaderCompressionInfoList			OPTIONAL
}

PDCP-Info-r4 ::=					SEQUENCE {
	losslessSRNS-RelocSupport			LosslessSRNS-RelocSupport			OPTIONAL,
	-- TABULAR: pdcp-PDU-Header is MD in the tabular format and it can be encoded
	-- in one bit, so the OPTIONAL is removed for compactness.
	pdcp-PDU-Header						PDCP-PDU-Header,
	headerCompressionInfoList			HeaderCompressionInfoList-r4		OPTIONAL
}

PDCP-InfoReconfig ::=				SEQUENCE {
	pdcp-Info							PDCP-Info,
	-- dummy is not used in this version of the specification and
	-- it should be ignored.
	dummy								INTEGER (0..65535)
}

PDCP-InfoReconfig-r4 ::=			SEQUENCE {
	pdcp-Info							PDCP-Info-r4
}

PDCP-PDU-Header ::=					ENUMERATED {
										present, absent }

PDCP-ROHC-TargetMode ::=			ENUMERATED { o-Mode, r-Mode }

PDCP-SN-Info ::=					INTEGER (0..65535)

Poll-PDU ::=						ENUMERATED {
										pdu1, pdu2, pdu4, pdu8, pdu16, 
										pdu32, pdu64, pdu128 }

Poll-SDU ::=						ENUMERATED {
										sdu1, sdu4, sdu16, sdu64 }

PollingInfo ::=						SEQUENCE {
	timerPollProhibit					TimerPollProhibit					OPTIONAL,
	timerPoll							TimerPoll							OPTIONAL,
	poll-PDU							Poll-PDU							OPTIONAL,
	poll-SDU							Poll-SDU							OPTIONAL,
	lastTransmissionPDU-Poll			BOOLEAN,
	lastRetransmissionPDU-Poll			BOOLEAN,
	pollWindow							PollWindow							OPTIONAL,
	timerPollPeriodic					TimerPollPeriodic					OPTIONAL
}

PollWindow ::=						ENUMERATED {
										pw50, pw60, pw70, pw80, pw85, 
										pw90, pw95, pw99 }

PredefinedConfigIdentity ::=		INTEGER (0..15)

PredefinedConfigValueTag ::=		INTEGER (0..15)

PredefinedRB-Configuration ::=		SEQUENCE {
	re-EstablishmentTimer				Re-EstablishmentTimer,
	srb-InformationList					SRB-InformationSetupList,
	rb-InformationList					RB-InformationSetupList
}

PreDefRadioConfiguration ::=		SEQUENCE {
	-- Radio bearer IEs
		predefinedRB-Configuration			PredefinedRB-Configuration,
	-- Transport channel IEs
		preDefTransChConfiguration			PreDefTransChConfiguration,
	-- Physical channel IEs
		preDefPhyChConfiguration			PreDefPhyChConfiguration
}

PredefinedConfigStatusList ::=				SEQUENCE (SIZE (maxPredefConfig)) OF
											PredefinedConfigStatusInfo

PredefinedConfigStatusInfo ::=		CHOICE {
	storedWithValueTagSameAsPrevius		NULL,
	other								CHOICE {
		notStored							NULL,
		storedWithDifferentValueTag			PredefinedConfigValueTag
	}
}

PredefinedConfigStatusListComp ::= SEQUENCE {
	setsWithDifferentValueTag			PredefinedConfigSetsWithDifferentValueTag,
	otherEntries						PredefinedConfigStatusListVarSz				OPTIONAL
}

PredefinedConfigSetsWithDifferentValueTag ::= SEQUENCE (SIZE (1..2)) OF
												PredefinedConfigSetWithDifferentValueTag

PredefinedConfigSetWithDifferentValueTag ::= SEQUENCE {
	startPosition								INTEGER (0..10)		DEFAULT 0,
	-- numberOfEntries							INTEGER (6..16),
	-- numberOfEntries is covered by the size of the list in IE PredefinedConfigValueTagList
	valueTagList								PredefinedConfigValueTagList
}


PredefinedConfigValueTagList ::=		SEQUENCE (SIZE (1..maxPredefConfig)) OF
											PredefinedConfigValueTag

PredefinedConfigStatusListVarSz ::=		SEQUENCE (SIZE (1..maxPredefConfig)) OF
											PredefinedConfigStatusInfo

RAB-Info ::=						SEQUENCE {
	rab-Identity						RAB-Identity,
	cn-DomainIdentity					CN-DomainIdentity,
	nas-Synchronisation-Indicator		NAS-Synchronisation-Indicator	OPTIONAL,
	re-EstablishmentTimer				Re-EstablishmentTimer
}

RAB-Info-r6-ext ::=					SEQUENCE {
	mbms-SessionIdentity				MBMS-SessionIdentity				OPTIONAL
}

RAB-Info-r6 ::=						SEQUENCE {
	rab-Identity						RAB-Identity,
	mbms-SessionIdentity				MBMS-SessionIdentity				OPTIONAL,
	cn-DomainIdentity					CN-DomainIdentity,
	nas-Synchronisation-Indicator		NAS-Synchronisation-Indicator		OPTIONAL,
	re-EstablishmentTimer				Re-EstablishmentTimer
}

RAB-InformationList ::=				SEQUENCE (SIZE (1..maxRABsetup)) OF
										RAB-Info

RAB-InformationList-r6 ::=			SEQUENCE (SIZE (1..maxRABsetup)) OF
										RAB-Info-r6

RAB-InformationReconfigList ::= 	SEQUENCE (SIZE (1.. maxRABsetup)) OF
										RAB-InformationReconfig

RAB-InformationReconfig ::=			SEQUENCE {
	rab-Identity						RAB-Identity,
	cn-DomainIdentity					CN-DomainIdentity,
	nas-Synchronisation-Indicator		NAS-Synchronisation-Indicator
}

RAB-Info-Post ::=						SEQUENCE {
	rab-Identity						RAB-Identity,
	cn-DomainIdentity					CN-DomainIdentity,
	nas-Synchronisation-Indicator		NAS-Synchronisation-Indicator	OPTIONAL
}

RAB-InformationSetup ::=			SEQUENCE {
	rab-Info							RAB-Info,
	rb-InformationSetupList				RB-InformationSetupList
}

RAB-InformationSetup-r4 ::=			SEQUENCE {
	rab-Info							RAB-Info,
	rb-InformationSetupList				RB-InformationSetupList-r4
}

RAB-InformationSetup-r5 ::=			SEQUENCE {
	rab-Info							RAB-Info,
	rb-InformationSetupList				RB-InformationSetupList-r5
}

RAB-InformationSetup-r6-ext ::=		SEQUENCE {
	rab-Info-r6-ext						RAB-Info-r6-ext
}

RAB-InformationSetup-r6 ::=			SEQUENCE {
	rab-Info							RAB-Info-r6,
	rb-InformationSetupList				RB-InformationSetupList-r6
}

RAB-InformationSetupList ::=		SEQUENCE (SIZE (1..maxRABsetup)) OF
										RAB-InformationSetup

RAB-InformationSetupList-r4 ::=		SEQUENCE (SIZE (1..maxRABsetup)) OF
										RAB-InformationSetup-r4

RAB-InformationSetupList-r5 ::=		SEQUENCE (SIZE (1..maxRABsetup)) OF
										RAB-InformationSetup-r5

RAB-InformationSetupList-r6 ::=		SEQUENCE (SIZE (1..maxRABsetup)) OF
										RAB-InformationSetup-r6

-- The IE 'RAB-InformationSetupList-r6-ext' provides elements of extension information, which
-- are added to the corresponding elements of the IE 'RAB-InformationSetupList/-r4/-r5'.
RAB-InformationSetupList-r6-ext ::= SEQUENCE (SIZE (1..maxRABsetup)) OF
										RAB-InformationSetup-r6-ext

RB-ActivationTimeInfo ::=			SEQUENCE {
	rb-Identity							RB-Identity,
	rlc-SequenceNumber					RLC-SequenceNumber
}	

RB-ActivationTimeInfoList ::=		SEQUENCE (SIZE (1..maxRB)) OF
										RB-ActivationTimeInfo

RB-COUNT-C-Information ::=			SEQUENCE {
	rb-Identity							RB-Identity,
	count-C-UL							COUNT-C,
	count-C-DL							COUNT-C
}

RB-COUNT-C-InformationList ::=		SEQUENCE (SIZE (1..maxRBallRABs)) OF
										RB-COUNT-C-Information

RB-COUNT-C-MSB-Information ::=		SEQUENCE {
	rb-Identity							RB-Identity,
	count-C-MSB-UL						COUNT-C-MSB,
	count-C-MSB-DL						COUNT-C-MSB
}

RB-COUNT-C-MSB-InformationList ::=	SEQUENCE (SIZE (1..maxRBallRABs)) OF
										RB-COUNT-C-MSB-Information

RB-Identity ::=						INTEGER (1..32)

RB-IdentityList ::=					SEQUENCE (SIZE (1..maxRB)) OF
										RB-Identity

RB-InformationAffected ::=			SEQUENCE {
	rb-Identity							RB-Identity,
	rb-MappingInfo						RB-MappingInfo
}

RB-InformationAffected-r5 ::=		SEQUENCE {
	rb-Identity							RB-Identity,
	rb-MappingInfo						RB-MappingInfo-r5
}

RB-InformationAffected-r6 ::=		SEQUENCE {
	rb-Identity							RB-Identity,
	rb-MappingInfo						RB-MappingInfo-r6
}

RB-InformationAffectedList ::= 		SEQUENCE (SIZE (1..maxRB)) OF
										RB-InformationAffected

RB-InformationAffectedList-r5 ::= 	SEQUENCE (SIZE (1..maxRB)) OF
										RB-InformationAffected-r5

RB-InformationAffectedList-r6 ::= 	SEQUENCE (SIZE (1..maxRB)) OF
										RB-InformationAffected-r6

RB-InformationChanged-r6 ::=		SEQUENCE {
	rb-Identity							RB-Identity,
	rb-Change							CHOICE {
		release								NULL,
		re-mapToDefaultRb					RB-Identity
	}
}

RB-InformationChangedList-r6 ::= 		SEQUENCE (SIZE (1..maxRB)) OF
											RB-InformationChanged-r6

RB-InformationReconfig ::=			SEQUENCE {
	rb-Identity							RB-Identity,
	pdcp-Info							PDCP-InfoReconfig					OPTIONAL,
	pdcp-SN-Info						PDCP-SN-Info						OPTIONAL,
	rlc-Info							RLC-Info							OPTIONAL,
	rb-MappingInfo						RB-MappingInfo						OPTIONAL,
	rb-StopContinue						RB-StopContinue						OPTIONAL
}

RB-InformationReconfig-r4 ::=		SEQUENCE {
	rb-Identity							RB-Identity,
	pdcp-Info							PDCP-InfoReconfig-r4				OPTIONAL,
	pdcp-SN-Info						PDCP-SN-Info						OPTIONAL,
	rlc-Info							RLC-Info							OPTIONAL,
	rb-MappingInfo						RB-MappingInfo						OPTIONAL,
	rb-StopContinue						RB-StopContinue						OPTIONAL
}

RB-InformationReconfig-r5 ::=		SEQUENCE {
	rb-Identity							RB-Identity,
	pdcp-Info							PDCP-InfoReconfig-r4				OPTIONAL,
	pdcp-SN-Info						PDCP-SN-Info						OPTIONAL,
	rlc-Info							RLC-Info-r5							OPTIONAL,
	rb-MappingInfo						RB-MappingInfo-r5					OPTIONAL,
	rb-StopContinue						RB-StopContinue						OPTIONAL
}

RB-InformationReconfig-r6 ::=		SEQUENCE {
	rb-Identity							RB-Identity,
	pdcp-Info							PDCP-InfoReconfig-r4				OPTIONAL,
	pdcp-SN-Info						PDCP-SN-Info						OPTIONAL,
	rlc-Info							RLC-Info-r6							OPTIONAL,
	rb-MappingInfo						RB-MappingInfo-r6					OPTIONAL,
	rb-StopContinue						RB-StopContinue						OPTIONAL
}

RB-InformationReconfigList ::= 		SEQUENCE (SIZE (1..maxRB)) OF
										RB-InformationReconfig

RB-InformationReconfigList-r4 ::= 	SEQUENCE (SIZE (1..maxRB)) OF
										RB-InformationReconfig-r4

RB-InformationReconfigList-r5 ::= 	SEQUENCE (SIZE (1..maxRB)) OF
										RB-InformationReconfig-r5

RB-InformationReconfigList-r6 ::= 	SEQUENCE (SIZE (1..maxRB)) OF
										RB-InformationReconfig-r6

RB-InformationReleaseList ::=		SEQUENCE (SIZE (1..maxRB)) OF
										RB-Identity

RB-InformationSetup ::=				SEQUENCE {
	rb-Identity							RB-Identity,
	pdcp-Info							PDCP-Info							OPTIONAL,
	rlc-InfoChoice						RLC-InfoChoice,
	rb-MappingInfo						RB-MappingInfo
}

RB-InformationSetup-r4 ::=			SEQUENCE {
	rb-Identity							RB-Identity,
	pdcp-Info							PDCP-Info-r4						OPTIONAL,
	rlc-InfoChoice						RLC-InfoChoice,
	rb-MappingInfo						RB-MappingInfo
}

RB-InformationSetup-r5 ::=			SEQUENCE {
	rb-Identity							RB-Identity,
	pdcp-Info							PDCP-Info-r4						OPTIONAL,
	rlc-InfoChoice						RLC-InfoChoice-r5,
	rb-MappingInfo						RB-MappingInfo-r5
}

RB-InformationSetup-r6 ::=			SEQUENCE {
	rb-Identity							RB-Identity,
	pdcp-Info							PDCP-Info-r4						OPTIONAL,
	rlc-InfoChoice						RLC-InfoChoice-r6,
	rb-MappingInfo						RB-MappingInfo-r6
}

RB-InformationSetupList ::=			SEQUENCE (SIZE (1..maxRBperRAB)) OF
										RB-InformationSetup

RB-InformationSetupList-r4 ::=		SEQUENCE (SIZE (1..maxRBperRAB)) OF
										RB-InformationSetup-r4

RB-InformationSetupList-r5 ::=		SEQUENCE (SIZE (1..maxRBperRAB)) OF
										RB-InformationSetup-r5

RB-InformationSetupList-r6 ::=		SEQUENCE (SIZE (1..maxRBperRAB)) OF
										RB-InformationSetup-r6

RB-MappingInfo ::=					SEQUENCE (SIZE (1..maxRBMuxOptions)) OF
										RB-MappingOption

RB-MappingInfo-r5 ::=					SEQUENCE (SIZE (1..maxRBMuxOptions)) OF
										RB-MappingOption-r5

RB-MappingInfo-r6 ::=					SEQUENCE (SIZE (1..maxRBMuxOptions)) OF
										RB-MappingOption-r6

RB-MappingOption ::= 				SEQUENCE {
	ul-LogicalChannelMappings			UL-LogicalChannelMappings			OPTIONAL,
	dl-LogicalChannelMappingList		DL-LogicalChannelMappingList		OPTIONAL
}

RB-MappingOption-r5 ::= 				SEQUENCE {
	ul-LogicalChannelMappings			UL-LogicalChannelMappings			OPTIONAL,
	dl-LogicalChannelMappingList		DL-LogicalChannelMappingList-r5		OPTIONAL
}

RB-MappingOption-r6 ::= 				SEQUENCE {
	ul-LogicalChannelMappings			UL-LogicalChannelMappings-r6		OPTIONAL,
	dl-LogicalChannelMappingList		DL-LogicalChannelMappingList-r5		OPTIONAL
}

RB-PDCPContextRelocation ::=			SEQUENCE {
	rb-Identity								RB-Identity,
	dl-RFC3095-Context-Relocation			BOOLEAN,
	ul-RFC3095-Context-Relocation			BOOLEAN
}

RB-PDCPContextRelocationList ::=			SEQUENCE (SIZE (1..maxRBallRABs)) OF
											RB-PDCPContextRelocation

RB-StopContinue ::=					ENUMERATED {
										stopRB, continueRB }

RB-WithPDCP-Info ::=				SEQUENCE {
	rb-Identity							RB-Identity,
	pdcp-SN-Info						PDCP-SN-Info
}

RB-WithPDCP-InfoList ::=			SEQUENCE (SIZE (1..maxRBallRABs)) OF
										RB-WithPDCP-Info

ReceivingWindowSize ::=				ENUMERATED {
										rw1, rw8, rw16, rw32, rw64, rw128, rw256,
										rw512, rw768, rw1024, rw1536, rw2047, 
										rw2560, rw3072, rw3584, rw4095 }

RFC2507-Info ::=					SEQUENCE {
	f-MAX-PERIOD						INTEGER (1..65535)					DEFAULT 256,
	f-MAX-TIME							INTEGER (1..255)					DEFAULT 5,
	max-HEADER							INTEGER (60..65535)					DEFAULT 168,
	tcp-SPACE							INTEGER (3..255)					DEFAULT 15,
	non-TCP-SPACE						INTEGER (3..65535)					DEFAULT 15,
	-- TABULAR: expectReordering has only two possible values, so using Optional or Default
	-- would be wasteful
	expectReordering					ExpectReordering
}

RFC3095-Info-r4 ::=				SEQUENCE {
	rohcProfileList						ROHC-ProfileList-r4,
	ul-RFC3095							UL-RFC3095-r4						OPTIONAL,
	dl-RFC3095							DL-RFC3095-r4						OPTIONAL
}

RLC-Info ::=						SEQUENCE {
	ul-RLC-Mode							UL-RLC-Mode							OPTIONAL,
	dl-RLC-Mode							DL-RLC-Mode							OPTIONAL
}

RLC-Info-r5 ::=						SEQUENCE {
	ul-RLC-Mode							UL-RLC-Mode							OPTIONAL,
	dl-RLC-Mode							DL-RLC-Mode-r5						OPTIONAL,
	rlc-OneSidedReEst					BOOLEAN
}

RLC-Info-r6 ::=						SEQUENCE {
	ul-RLC-Mode							UL-RLC-Mode							OPTIONAL,
	dl-RLC-Mode							DL-RLC-Mode-r6						OPTIONAL,
	rlc-OneSidedReEst					BOOLEAN,
	altE-bitInterpretation				ENUMERATED { true }					OPTIONAL
}

RLC-Info-MBMS-r6 ::=				SEQUENCE {
	dl-UM-RLC-LI-size					DL-UM-RLC-LI-size,
	dl-UM-RLC-DuplAvoid-Reord-Info		UM-RLC-DuplAvoid-Reord-Info-r6		OPTIONAL,
	dl-UM-RLC-OutOSeqDelivery-Info		UM-RLC-OutOSeqDelivery-Info-r6		OPTIONAL
}

RLC-InfoChoice ::=					CHOICE {
	rlc-Info							RLC-Info,
	same-as-RB							RB-Identity
}

RLC-InfoChoice-r5 ::=					CHOICE {
	rlc-Info-r5							RLC-Info-r5,
	same-as-RB							RB-Identity
}

RLC-InfoChoice-r6 ::=					CHOICE {
	rlc-Info-r6							RLC-Info-r6,
	same-as-RB							RB-Identity
}

RLC-PDU-Size ::=					OctetModeRLC-SizeInfoType1

RLC-PDU-SizeList ::=				SEQUENCE (SIZE (1..maxRLCPDUsizePerLogChan)) OF
										RLC-PDU-Size

RLC-SequenceNumber ::=				INTEGER (0..4095)

RLC-SizeInfo ::=					SEQUENCE {
	rlc-SizeIndex						INTEGER (1..maxTF)
}

RLC-SizeExplicitList ::=			SEQUENCE (SIZE	(1..maxTF))	OF
										RLC-SizeInfo

ROHC-Profile-r4 ::=					INTEGER (1..3)

ROHC-ProfileList-r4 ::=				SEQUENCE (SIZE	(1..maxROHC-Profile-r4))	OF
										ROHC-Profile-r4

ROHC-PacketSize-r4 ::=				INTEGER (2..1500)

ROHC-PacketSizeList-r4 ::=			SEQUENCE (SIZE	(1..maxROHC-PacketSizes-r4))	OF
										ROHC-PacketSize-r4

SRB-InformationSetup ::=			SEQUENCE {
	-- The default value for rb-Identity is the smallest value not used yet.
	rb-Identity							RB-Identity							OPTIONAL,
	rlc-InfoChoice						RLC-InfoChoice,
	rb-MappingInfo						RB-MappingInfo
}

SRB-InformationSetup-r5 ::=			SEQUENCE {
	-- The default value for rb-Identity is the smallest value not used yet.
	rb-Identity							RB-Identity							OPTIONAL,
	rlc-InfoChoice						RLC-InfoChoice-r5,
	rb-MappingInfo						RB-MappingInfo-r5
}

SRB-InformationSetup-r6 ::=			SEQUENCE {
	-- The default value for rb-Identity is the smallest value not used yet.
	rb-Identity							RB-Identity							OPTIONAL,
	rlc-InfoChoice						RLC-InfoChoice-r6,
	rb-MappingInfo						RB-MappingInfo-r6
}

SRB-InformationSetupList ::=		SEQUENCE (SIZE (1..maxSRBsetup)) OF
										SRB-InformationSetup

SRB-InformationSetupList-r5 ::=		SEQUENCE (SIZE (1..maxSRBsetup)) OF
										SRB-InformationSetup-r5

SRB-InformationSetupList-r6 ::=		SEQUENCE (SIZE (1..maxSRBsetup)) OF
										SRB-InformationSetup-r6

SRB-InformationSetupList2 ::=		SEQUENCE (SIZE (3..4)) OF
										SRB-InformationSetup

SRB-InformationSetupList2-r6 ::=	SEQUENCE (SIZE (3..4)) OF
										SRB-InformationSetup-r6

TimerDAR-r6 ::=						ENUMERATED {
										ms40, ms80, ms120, ms160, ms240, ms320, ms480, ms640,
										ms960, ms1280, ms1920, ms2560, ms3840, ms5120 }

TimerDiscard ::=					ENUMERATED {
										td0-1, td0-25, td0-5, td0-75,
										td1, td1-25, td1-5, td1-75,
										td2, td2-5, td3, td3-5, td4,
										td4-5, td5, td7-5 }

TimerEPC ::=						ENUMERATED {
										te50, te60, te70, te80, te90,
										te100, te120, te140, te160, te180,
										te200, te300, te400, te500, te700,
										te900 }

TimerMRW ::=						ENUMERATED {
										te50, te60, te70, te80, te90, te100, 
										te120, te140, te160, te180, te200, 
										te300, te400, te500, te700, te900 }

TimerOSD-r6 ::=						ENUMERATED {
										ms40, ms80, ms120, ms160, ms240, ms320, ms480, ms640,
										ms960, ms1280, ms1920, ms2560, ms3840, ms5120 }

TimerPoll ::=						ENUMERATED {
										tp10, tp20, tp30, tp40, tp50,
										tp60, tp70, tp80, tp90, tp100,
										tp110, tp120, tp130, tp140, tp150,
										tp160, tp170, tp180, tp190, tp200,
										tp210, tp220, tp230, tp240, tp250,
										tp260, tp270, tp280, tp290, tp300,
										tp310, tp320, tp330, tp340, tp350,
										tp360, tp370, tp380, tp390, tp400,
										tp410, tp420, tp430, tp440, tp450,
										tp460, tp470, tp480, tp490, tp500,
										tp510, tp520, tp530, tp540, tp550,
										tp600, tp650, tp700, tp750, tp800,
										tp850, tp900, tp950, tp1000 }

TimerPollPeriodic ::=				ENUMERATED {
										tper100, tper200, tper300, tper400,
										tper500, tper750, tper1000, tper2000 }

TimerPollProhibit ::=				ENUMERATED {
										tpp10, tpp20, tpp30, tpp40, tpp50,
										tpp60, tpp70, tpp80, tpp90, tpp100,
										tpp110, tpp120, tpp130, tpp140, tpp150,
										tpp160, tpp170, tpp180, tpp190, tpp200,
										tpp210, tpp220, tpp230, tpp240, tpp250,
										tpp260, tpp270, tpp280, tpp290, tpp300,
										tpp310, tpp320, tpp330, tpp340, tpp350,
										tpp360, tpp370, tpp380, tpp390, tpp400,
										tpp410, tpp420, tpp430, tpp440, tpp450,
										tpp460, tpp470, tpp480, tpp490, tpp500,
										tpp510, tpp520, tpp530, tpp540, tpp550,
										tpp600, tpp650, tpp700, tpp750, tpp800,
										tpp850, tpp900, tpp950, tpp1000 }

TimerRST ::=						ENUMERATED {
										tr50, tr100, tr150, tr200, tr250, tr300, 
										tr350, tr400, tr450, tr500, tr550,
										tr600, tr700, tr800, tr900, tr1000 }

TimerStatusPeriodic ::=				ENUMERATED {
										tsp100, tsp200,	tsp300, tsp400, tsp500,
										tsp750, tsp1000, tsp2000 }

TimerStatusProhibit ::=				ENUMERATED {
										tsp10,tsp20,tsp30,tsp40,tsp50,
										tsp60,tsp70,tsp80,tsp90,tsp100,
										tsp110,tsp120,tsp130,tsp140,tsp150,
										tsp160,tsp170,tsp180,tsp190,tsp200,
										tsp210,tsp220,tsp230,tsp240,tsp250,
										tsp260,tsp270,tsp280,tsp290,tsp300,
										tsp310,tsp320,tsp330,tsp340,tsp350,
										tsp360,tsp370,tsp380,tsp390,tsp400,
										tsp410,tsp420,tsp430,tsp440,tsp450,
										tsp460,tsp470,tsp480,tsp490,tsp500,
										tsp510,tsp520,tsp530,tsp540,tsp550,
										tsp600,tsp650,tsp700,tsp750,tsp800,
										tsp850,tsp900,tsp950,tsp1000 }

TransmissionRLC-Discard ::=			CHOICE {
	timerBasedExplicit					ExplicitDiscard,
	timerBasedNoExplicit				NoExplicitDiscard,
	maxDAT-Retransmissions				MaxDAT-Retransmissions,
	noDiscard							MaxDAT
}

TransmissionWindowSize ::=			ENUMERATED {
										tw1, tw8, tw16, tw32, tw64, tw128, tw256,
										tw512, tw768, tw1024, tw1536, tw2047, 
										tw2560, tw3072, tw3584, tw4095 }

UL-AM-RLC-Mode ::=					SEQUENCE {
	transmissionRLC-Discard				TransmissionRLC-Discard,
	transmissionWindowSize				TransmissionWindowSize,
	timerRST							TimerRST,
	max-RST								MaxRST,
	pollingInfo							PollingInfo							OPTIONAL
}

UL-CounterSynchronisationInfo ::=		SEQUENCE {
	rB-WithPDCP-InfoList					RB-WithPDCP-InfoList 	OPTIONAL,
	startList								STARTList
}

UL-LogicalChannelMapping ::=		SEQUENCE {
	-- TABULAR: UL-TransportChannelType contains TransportChannelIdentity as well.
	ul-TransportChannelType				UL-TransportChannelType,
	logicalChannelIdentity				LogicalChannelIdentity				OPTIONAL,
	rlc-SizeList						CHOICE {
		allSizes							NULL,
		configured							NULL,
		explicitList						RLC-SizeExplicitList
	},
	mac-LogicalChannelPriority			MAC-LogicalChannelPriority
}

UL-LogicalChannelMapping-r6 ::=		SEQUENCE {
	ul-TrCH-Type						CHOICE {
		dch-rach-usch						SEQUENCE {
			-- TABULAR: UL-TransportChannelType contains TransportChannelIdentity as well.
			ul-TransportChannelType				UL-TransportChannelType,
			logicalChannelIdentity				LogicalChannelIdentity				OPTIONAL,
			rlc-SizeList						CHOICE {
				allSizes							NULL,
				configured							NULL,
				explicitList						RLC-SizeExplicitList
			}
		},
		e-dch								SEQUENCE {
			logicalChannelIdentity				LogicalChannelIdentity,
			e-DCH-MAC-d-FlowIdentity			E-DCH-MAC-d-FlowIdentity,
			ddi									DDI,
			rlc-PDU-SizeList					RLC-PDU-SizeList,
			includeInSchedulingInfo				BOOLEAN
		}
	},
	mac-LogicalChannelPriority			MAC-LogicalChannelPriority
}

UL-LogicalChannelMappingList ::=	SEQUENCE {
	-- rlc-LogicalChannelMappingIndicator shall be set to TRUE in this version
	-- of the specification
	rlc-LogicalChannelMappingIndicator	BOOLEAN,
	ul-LogicalChannelMapping			SEQUENCE (SIZE (maxLoCHperRLC)) OF
										UL-LogicalChannelMapping
}

UL-LogicalChannelMappingList-r6 ::=	SEQUENCE {
	-- rlc-LogicalChannelMappingIndicator shall be set to TRUE in this version
	-- of the specification
	rlc-LogicalChannelMappingIndicator	BOOLEAN,
	ul-LogicalChannelMapping			SEQUENCE (SIZE (maxLoCHperRLC)) OF
											UL-LogicalChannelMapping-r6
}

UL-LogicalChannelMappings ::=		CHOICE {
	oneLogicalChannel					UL-LogicalChannelMapping,
	twoLogicalChannels					UL-LogicalChannelMappingList
}

UL-LogicalChannelMappings-r6 ::=	CHOICE {
	oneLogicalChannel					UL-LogicalChannelMapping-r6,
	twoLogicalChannels					UL-LogicalChannelMappingList-r6
}

UL-RFC3095-r4 ::=					SEQUENCE {
	cid-InclusionInfo					CID-InclusionInfo-r4,
	max-CID								INTEGER (1..16383)					DEFAULT 15,
	rohcPacketSizeList					ROHC-PacketSizeList-r4
}

UL-RLC-Mode ::=						CHOICE {
	ul-AM-RLC-Mode						UL-AM-RLC-Mode,
	ul-UM-RLC-Mode						UL-UM-RLC-Mode,
	ul-TM-RLC-Mode						UL-TM-RLC-Mode,
	spare								NULL
}

UL-TM-RLC-Mode ::=					SEQUENCE {
	transmissionRLC-Discard				TransmissionRLC-Discard				OPTIONAL,
	segmentationIndication				BOOLEAN
}

UL-UM-RLC-Mode ::=					SEQUENCE {
	transmissionRLC-Discard				TransmissionRLC-Discard				OPTIONAL
}

UL-TransportChannelType ::=			CHOICE {
	dch									TransportChannelIdentity,
	rach								NULL,
	-- dummy is not used in this version of the specification and
	-- if received the UE behaviour is not specified.
	dummy								NULL,
	usch								TransportChannelIdentity
}

UM-RLC-DuplAvoid-Reord-Info-r6 ::=	SEQUENCE {
	timer-DAR							TimerDAR-r6,
	widowSize-DAR						WindowSizeDAR-r6
}

UM-RLC-OutOSeqDelivery-Info-r6 ::=	SEQUENCE {
	timer-OSD							TimerOSD-r6							OPTIONAL,
	windowSize-OSD						WindowSizeOSD-r6
}

WindowSizeDAR-r6 ::=				ENUMERATED {
										ws4, ws8, ws16, ws32, ws40, ws48,
										ws56, ws64 }

WindowSizeOSD-r6 ::=				ENUMERATED {
										ws8, ws16, ws32, ws40, ws48,
										ws56, ws64 }

-- ***************************************************
--
--     TRANSPORT CHANNEL INFORMATION ELEMENTS (10.3.5)
--
-- ***************************************************

AddOrReconfMAC-dFlow ::=			SEQUENCE {
	mac-hs-AddReconfQueue-List					MAC-hs-AddReconfQueue-List	OPTIONAL,
	mac-hs-DelQueue-List						MAC-hs-DelQueue-List	OPTIONAL
}

AllowedTFC-List ::=					SEQUENCE (SIZE (1..maxTFC)) OF
										TFC-Value

AllowedTFI-List ::=					SEQUENCE (SIZE (1..maxTF)) OF
										INTEGER (0..31)

BitModeRLC-SizeInfo ::=				CHOICE {
	sizeType1							INTEGER (0..127),
	-- Actual value sizeType2 = (part1 * 8) + 128 + part2
	sizeType2							SEQUENCE {
		part1								INTEGER (0..15),
		part2								INTEGER (1..7)					OPTIONAL
	},
	-- Actual value sizeType3 = (part1 * 16) + 256 + part2
	sizeType3							SEQUENCE {
		part1								INTEGER (0..47),
		part2								INTEGER (1..15)					OPTIONAL
	},
	-- Actual value sizeType4 = (part1 * 64) + 1024 + part2
	sizeType4							SEQUENCE {
		part1								INTEGER (0..62),
		part2								INTEGER (1..63)					OPTIONAL
	}
}

-- Actual value BLER-QualityValue = IE value * 0.1
BLER-QualityValue ::=				INTEGER (-63..0)

ChannelCodingType ::=				CHOICE { 
	-- noCoding is only used for TDD in this version of the specification,
	-- otherwise it should be ignored
	noCoding							NULL,
	convolutional						CodingRate,
	turbo								NULL 
}

CodingRate ::=						ENUMERATED {
										half,
										third }

CommonDynamicTF-Info ::=			SEQUENCE {
	rlc-Size							CHOICE {
		fdd									SEQUENCE {
			octetModeRLC-SizeInfoType2			OctetModeRLC-SizeInfoType2
		},
		tdd									SEQUENCE {
			commonTDD-Choice					CHOICE {
				bitModeRLC-SizeInfo					BitModeRLC-SizeInfo,
				octetModeRLC-SizeInfoType1			OctetModeRLC-SizeInfoType1
			}
		}
	},
	numberOfTbSizeList				SEQUENCE (SIZE (1..maxTF)) OF		
											NumberOfTransportBlocks,
	logicalChannelList				LogicalChannelList
}

CommonDynamicTF-Info-DynamicTTI ::=	SEQUENCE {
	commonTDD-Choice					CHOICE {
		bitModeRLC-SizeInfo					BitModeRLC-SizeInfo,
		octetModeRLC-SizeInfoType1			OctetModeRLC-SizeInfoType1
	},
	numberOfTbSizeAndTTIList			NumberOfTbSizeAndTTIList,
	logicalChannelList					LogicalChannelList
}

CommonDynamicTF-InfoList ::=		SEQUENCE (SIZE (1..maxTF)) OF
										CommonDynamicTF-Info

CommonDynamicTF-InfoList-DynamicTTI ::= SEQUENCE (SIZE (1..maxTF)) OF
										CommonDynamicTF-Info-DynamicTTI

CommonTransChTFS ::=				SEQUENCE {
	tti									CHOICE {
		tti10								CommonDynamicTF-InfoList,
		tti20								CommonDynamicTF-InfoList,
		tti40								CommonDynamicTF-InfoList,
		tti80								CommonDynamicTF-InfoList,
		dynamic								CommonDynamicTF-InfoList-DynamicTTI
	},
	semistaticTF-Information			SemistaticTF-Information
}

CommonTransChTFS-LCR ::=				SEQUENCE {
	tti									CHOICE {
		tti5								CommonDynamicTF-InfoList,
		tti10								CommonDynamicTF-InfoList,
		tti20								CommonDynamicTF-InfoList,
		tti40								CommonDynamicTF-InfoList,
		tti80								CommonDynamicTF-InfoList,
		dynamic								CommonDynamicTF-InfoList-DynamicTTI
	},
	semistaticTF-Information			SemistaticTF-Information
}

CPCH-SetID ::=						INTEGER (1..maxCPCHsets)

CRC-Size ::=						ENUMERATED { 
										crc0, crc8, crc12, crc16, crc24 }

DedicatedDynamicTF-Info ::=			SEQUENCE {
	rlc-Size							CHOICE {
		bitMode								BitModeRLC-SizeInfo,
		octetModeType1						OctetModeRLC-SizeInfoType1
	},
	numberOfTbSizeList				SEQUENCE (SIZE (1..maxTF)) OF										NumberOfTransportBlocks,
	logicalChannelList				LogicalChannelList 
}

DedicatedDynamicTF-Info-DynamicTTI ::= SEQUENCE {
	rlc-Size							CHOICE {
		bitMode								BitModeRLC-SizeInfo,
		octetModeType1						OctetModeRLC-SizeInfoType1
	},
	numberOfTbSizeAndTTIList			NumberOfTbSizeAndTTIList,
	logicalChannelList				LogicalChannelList 
}

DedicatedDynamicTF-InfoList ::=		SEQUENCE (SIZE (1..maxTF)) OF
										DedicatedDynamicTF-Info

DedicatedDynamicTF-InfoList-DynamicTTI ::= SEQUENCE (SIZE (1..maxTF)) OF
										DedicatedDynamicTF-Info-DynamicTTI

DedicatedTransChTFS ::=				SEQUENCE {
	tti									CHOICE {
		tti10								DedicatedDynamicTF-InfoList,
		tti20								DedicatedDynamicTF-InfoList,
		tti40								DedicatedDynamicTF-InfoList,
		tti80								DedicatedDynamicTF-InfoList,
		dynamic								DedicatedDynamicTF-InfoList-DynamicTTI
	},
	semistaticTF-Information			SemistaticTF-Information
}

-- The maximum allowed size of DL-AddReconfTransChInfo2List sequence is 16
DL-AddReconfTransChInfo2List ::=	SEQUENCE (SIZE (1..maxTrCHpreconf)) OF
										DL-AddReconfTransChInformation2

-- The maximum allowed size of DL-AddReconfTransChInfoList sequence is 16
DL-AddReconfTransChInfoList ::=		SEQUENCE (SIZE (1..maxTrCHpreconf)) OF
										DL-AddReconfTransChInformation

-- The maximum allowed size of DL-AddReconfTransChInfoList-r4 sequence is 16
DL-AddReconfTransChInfoList-r4 ::=	SEQUENCE (SIZE (1..maxTrCHpreconf)) OF
										DL-AddReconfTransChInformation-r4

-- The maximum allowed size of DL-AddReconfTransChInfoList-r5 sequence is 16
DL-AddReconfTransChInfoList-r5 ::=	SEQUENCE (SIZE (1..maxTrCHpreconf)) OF
										DL-AddReconfTransChInformation-r5

-- ASN.1 for IE "Added or Reconfigured DL TrCH information" 
-- in case of messages other than: Radio Bearer Release message and 
-- Radio Bearer Reconfiguration message
DL-AddReconfTransChInformation ::= 	SEQUENCE {
	dl-TransportChannelType				DL-TrCH-Type,
	dl-transportChannelIdentity			TransportChannelIdentity,
	tfs-SignallingMode					CHOICE {
		explicit-config						TransportFormatSet,
		sameAsULTrCH						UL-TransportChannelIdentity
	},
	dch-QualityTarget					QualityTarget						OPTIONAL,
	-- dummy is not used in this version of the specification, it should 
	-- not be sent and if received it should be ignored.
	dummy								TM-SignallingInfo					OPTIONAL
}

DL-AddReconfTransChInformation-r4 ::= 	SEQUENCE {
	dl-TransportChannelType				DL-TrCH-Type,
	dl-transportChannelIdentity			TransportChannelIdentity,
	tfs-SignallingMode					CHOICE {
		explicit-config						TransportFormatSet,
		sameAsULTrCH						UL-TransportChannelIdentity
	},
	dch-QualityTarget					QualityTarget						OPTIONAL
}

DL-AddReconfTransChInformation-r5 ::= 	SEQUENCE {
	dl-TransportChannelType				DL-TrCH-TypeId1-r5,
	tfs-SignallingMode					CHOICE {
		explicit-config						TransportFormatSet,
		sameAsULTrCH						UL-TransportChannelIdentity,
		hsdsch								HSDSCH-Info
	},
	dch-QualityTarget					QualityTarget						OPTIONAL
}

-- ASN.1 for IE "Added or Reconfigured DL TrCH information" 
-- in case of Radio Bearer Release message and 
-- Radio Bearer Reconfiguration message
DL-AddReconfTransChInformation2 ::= SEQUENCE {
	dl-TransportChannelType				DL-TrCH-Type,
	transportChannelIdentity			TransportChannelIdentity,
	tfs-SignallingMode					CHOICE {
		explicit-config						TransportFormatSet,
		sameAsULTrCH						UL-TransportChannelIdentity
	},
	qualityTarget						QualityTarget						OPTIONAL
}

DL-CommonTransChInfo ::=			SEQUENCE {
	sccpch-TFCS							TFCS								OPTIONAL,
	-- modeSpecificInfo should be optional. A new version of this IE should be defined 
	-- to be used in later versions of messages using this IE
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			dl-Parameters						CHOICE {
				dl-DCH-TFCS							TFCS,
				sameAsUL							NULL
			}																OPTIONAL
		},
		tdd									SEQUENCE {
			individualDL-CCTrCH-InfoList		IndividualDL-CCTrCH-InfoList
																			OPTIONAL
		}
	}
}

DL-CommonTransChInfo-r4 ::=			SEQUENCE {
	sccpch-TFCS							TFCS								OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			dl-Parameters						CHOICE {
				dl-DCH-TFCS							SEQUENCE {
					tfcs								TFCS				OPTIONAL
				},
				sameAsUL							NULL
			}																OPTIONAL
		},
		tdd									SEQUENCE {
			individualDL-CCTrCH-InfoList		IndividualDL-CCTrCH-InfoList
																			OPTIONAL
		}
	}	OPTIONAL
}

DL-DeletedTransChInfoList ::=		SEQUENCE (SIZE (1..maxTrCH)) OF
										DL-TransportChannelIdentity

DL-DeletedTransChInfoList-r5 ::=	SEQUENCE (SIZE (1..maxTrCH)) OF
										DL-TransportChannelIdentity-r5	

DL-TransportChannelIdentity ::= 		SEQUENCE {
	dl-TransportChannelType				DL-TrCH-Type,
	dl-TransportChannelIdentity			TransportChannelIdentity
}

DL-TransportChannelIdentity-r5 ::= 		SEQUENCE {
	dl-TransportChannelType				DL-TrCH-TypeId2-r5
}

-- The choice dsch should not be used in FDD mode, and if received the UE behaviour is unspecified
DL-TrCH-Type ::=					ENUMERATED {dch, dsch}

DL-TrCH-TypeId1-r5 ::=				CHOICE {
	dch									TransportChannelIdentity,
	-- The choice dsch should not be used in FDD mode, and if received
	-- the UE behaviour is unspecified.
	dsch								TransportChannelIdentity,
	hsdsch								NULL
}

DL-TrCH-TypeId2-r5 ::=				CHOICE {
	dch									TransportChannelIdentity,
	-- The choice dsch should not be used in FDD mode, and if received
	-- the UE behaviour is unspecified.
	dsch								TransportChannelIdentity,
	hsdsch								MAC-d-FlowIdentity
}

DRAC-ClassIdentity ::=				INTEGER (1..maxDRACclasses)

DRAC-StaticInformation ::=			SEQUENCE {
	transmissionTimeValidity			TransmissionTimeValidity,
	timeDurationBeforeRetry				TimeDurationBeforeRetry,
	drac-ClassIdentity					DRAC-ClassIdentity
}

DRAC-StaticInformationList ::=		SEQUENCE (SIZE (1..maxTrCH)) OF 
										DRAC-StaticInformation

E-DCH-AddReconf-MAC-d-Flow ::=		SEQUENCE {
	mac-d-FlowIdentity					E-DCH-MAC-d-FlowIdentity,
	mac-d-FlowPowerOffset				E-DCH-MAC-d-FlowPowerOffset			OPTIONAL,
	mac-d-FlowMaxRetrans				E-DCH-MAC-d-FlowMaxRetrans			OPTIONAL,
	mac-d-FlowMultiplexingList			E-DCH-MAC-d-FlowMultiplexingList	OPTIONAL,
	transmissionGrantType				CHOICE {
		non-ScheduledTransGrantInfo			SEQUENCE {
			maxMAC-e-PDUContents				INTEGER (1..19982),
			ms2-NonSchedTransmGrantHARQAlloc	BIT STRING (SIZE (8))		OPTIONAL
		},
		scheduledTransmissionGrantInfo		NULL
	}	OPTIONAL
}

E-DCH-MAC-d-FlowIdentity ::=		INTEGER (0..maxE-DCHMACdFlow-1)

E-DCH-MAC-d-FlowMaxRetrans ::=		INTEGER (0..15)

E-DCH-MAC-d-FlowMultiplexingList ::= BIT STRING (SIZE (maxE-DCHMACdFlow))

E-DCH-MAC-d-FlowPowerOffset ::=		INTEGER (0..6)

E-DCH-TTI ::=						ENUMERATED { tti2, tti10 }

ExplicitTFCS-Configuration ::=		CHOICE {
	complete							TFCS-ReconfAdd,
	addition							TFCS-ReconfAdd,
	removal								TFCS-RemovalList,
	replacement							SEQUENCE {
		tfcsRemoval							TFCS-RemovalList,
		tfcsAdd								TFCS-ReconfAdd
	}
}

GainFactor ::=						INTEGER (0..15)

GainFactorInformation ::=			CHOICE {
	signalledGainFactors				SignalledGainFactors,
	computedGainFactors					ReferenceTFC-ID
}

HSDSCH-Info ::=						SEQUENCE {
	harqInfo							HARQ-Info 				OPTIONAL,
	addOrReconfMAC-dFlow				AddOrReconfMAC-dFlow	OPTIONAL
}

HARQ-Info ::=						SEQUENCE {
	numberOfProcesses					INTEGER (1..8),
	memoryPartitioning					CHOICE {
		implicit							NULL,
		explicit							SEQUENCE (SIZE (1..maxHProcesses)) OF
												HARQMemorySize
	}
}

HARQMemorySize ::= 					ENUMERATED {
										hms800, hms1600, hms2400, hms3200, hms4000,
										hms4800, hms5600, hms6400, hms7200, hms8000,
										hms8800, hms9600, hms10400, hms11200, hms12000,
										hms12800, hms13600, hms14400, hms15200, hms16000,
										hms17600, hms19200, hms20800, hms22400, hms24000,
										hms25600, hms27200, hms28800, hms30400, hms32000,
										hms36000, hms40000, hms44000, hms48000, hms52000,
										hms56000, hms60000, hms64000, hms68000, hms72000,
										hms76000, hms80000, hms88000, hms96000, hms104000,
										hms112000, hms120000, hms128000, hms136000, hms144000,
										hms152000, hms160000, hms176000, hms192000, hms208000,
										hms224000, hms240000, hms256000, hms272000, hms288000,
										hms304000 }

IndividualDL-CCTrCH-Info ::=		SEQUENCE {
	dl-TFCS-Identity					TFCS-Identity,
	tfcs-SignallingMode					CHOICE {
		explicit-config						TFCS,
		sameAsUL							TFCS-Identity
	}
}

IndividualDL-CCTrCH-InfoList ::=	SEQUENCE (SIZE (1..maxCCTrCH)) OF
										IndividualDL-CCTrCH-Info

IndividualUL-CCTrCH-Info ::=		SEQUENCE {
	ul-TFCS-Identity					TFCS-Identity,
	ul-TFCS								TFCS ,
	tfc-Subset							TFC-Subset
}

IndividualUL-CCTrCH-InfoList ::=	SEQUENCE (SIZE (1..maxCCTrCH)) OF
										IndividualUL-CCTrCH-Info

LogicalChannelByRB ::=				SEQUENCE {
	rb-Identity							RB-Identity,	
	logChOfRb							INTEGER (0..1)						OPTIONAL
}

LogicalChannelList ::=				CHOICE {
		allSizes							NULL,
		configured							NULL,
		explicitList						SEQUENCE (SIZE (1..15)) OF
												LogicalChannelByRB				
}

MAC-d-FlowIdentityDCHandHSDSCH ::=	SEQUENCE {
	dch-transport-ch-id				TransportChannelIdentity,
	hsdsch-mac-d-flow-id			MAC-d-FlowIdentity
}

MAC-d-FlowIdentity ::=				INTEGER (0..7)

MAC-d-PDU-SizeInfo-List ::=			SEQUENCE (SIZE(1.. maxMAC-d-PDUsizes)) OF
										MAC-d-PDUsizeInfo

--MAC-d-Pdu sizes need to be defined
MAC-d-PDUsizeInfo ::=				SEQUENCE{
	mac-d-PDU-Size						INTEGER (1..5000),
	mac-d-PDU-Index						INTEGER(0..7)
}

MAC-hs-AddReconfQueue-List ::=				SEQUENCE (SIZE(1..maxQueueIDs)) OF
										MAC-hs-AddReconfQueue

MAC-hs-AddReconfQueue ::=			SEQUENCE {
	mac-hsQueueId						INTEGER(0..7),
	mac-dFlowId							MAC-d-FlowIdentity,
	reorderingReleaseTimer				T1-ReleaseTimer,
	mac-hsWindowSize					MAC-hs-WindowSize,
	mac-d-PDU-SizeInfo-List				MAC-d-PDU-SizeInfo-List				OPTIONAL
}

MAC-hs-DelQueue-List ::=				SEQUENCE (SIZE(1..maxQueueIDs)) OF
										MAC-hs-DelQueue

MAC-hs-DelQueue ::=					SEQUENCE {
	mac-hsQueueId						INTEGER(0..7)
}

MAC-hs-WindowSize ::=				ENUMERATED {
										mws4, mws6, mws8, mws12, mws16, mws24, mws32 }

NumberOfTbSizeAndTTIList ::=		SEQUENCE (SIZE (1..maxTF)) OF SEQUENCE {
		numberOfTransportBlocks				NumberOfTransportBlocks,
		transmissionTimeInterval			TransmissionTimeInterval
}

MessType ::=						ENUMERATED {
										transportFormatCombinationControl }

Non-allowedTFC-List ::=				SEQUENCE (SIZE (1..maxTFC)) OF
										TFC-Value

NumberOfTransportBlocks ::=			CHOICE {
	zero								NULL,
	one									NULL,
	small								INTEGER (2..17),
	large								INTEGER (18..512)
}

OctetModeRLC-SizeInfoType1 ::=		CHOICE {
	-- Actual size = (8 * sizeType1) + 16
	sizeType1							INTEGER (0..31),
	sizeType2							SEQUENCE {
		-- Actual size = (32 * part1) + 272 + (part2 * 8)
		part1								INTEGER (0..23),
		part2								INTEGER (1..3)					OPTIONAL
	},
	sizeType3							SEQUENCE {
		-- Actual size = (64 * part1) + 1040 + (part2 * 8)
		part1								INTEGER (0..61),
		part2								INTEGER (1..7)					OPTIONAL
	}
}

OctetModeRLC-SizeInfoType2 ::=		CHOICE {
	-- Actual size = (sizeType1 * 8) + 48
	sizeType1							INTEGER (0..31),
	-- Actual size = (sizeType2 * 16) + 312
	sizeType2							INTEGER (0..63),
	-- Actual size = (sizeType3 *64) + 1384
	sizeType3							INTEGER (0..56)
}

PowerOffsetInfoShort ::=			SEQUENCE {
	referenceTFC						TFC-Value,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			gainFactorBetaC						GainFactor
		},
		tdd									NULL
	},
	gainFactorBetaD						GainFactor
}

PowerOffsetInformation ::=			SEQUENCE {
	gainFactorInformation				GainFactorInformation,
	-- PowerOffsetPp-m is always absent in TDD
	powerOffsetPp-m						PowerOffsetPp-m						OPTIONAL
}

PowerOffsetPp-m ::=					INTEGER (-5..10)

PreDefTransChConfiguration ::=		SEQUENCE {
	ul-CommonTransChInfo				UL-CommonTransChInfo,
	ul-AddReconfTrChInfoList			UL-AddReconfTransChInfoList,
	dl-CommonTransChInfo				DL-CommonTransChInfo,
	dl-TrChInfoList						DL-AddReconfTransChInfoList
}	

QualityTarget ::=					SEQUENCE {
	bler-QualityValue					BLER-QualityValue
}

RateMatchingAttribute ::=			INTEGER (1..hiRM)


ReferenceTFC-ID ::=					INTEGER (0..3)

RestrictedTrChInfo ::=				SEQUENCE {
	ul-TransportChannelType				UL-TrCH-Type,
	restrictedTrChIdentity				TransportChannelIdentity,
	allowedTFI-List						AllowedTFI-List						OPTIONAL
}

RestrictedTrChInfoList ::=			SEQUENCE (SIZE (1..maxTrCH)) OF
										RestrictedTrChInfo

SemistaticTF-Information ::=		SEQUENCE {
	-- TABULAR: Transmission time interval has been included in the IE CommonTransChTFS.
	channelCodingType					ChannelCodingType,
	rateMatchingAttribute				RateMatchingAttribute,
	crc-Size							CRC-Size
}

SignalledGainFactors ::=			SEQUENCE {
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			gainFactorBetaC						GainFactor
		},
		tdd									NULL
	},
	gainFactorBetaD						GainFactor,
	referenceTFC-ID						ReferenceTFC-ID						OPTIONAL
}

SplitTFCI-Signalling ::=			SEQUENCE {
	splitType							SplitType						OPTIONAL,
	tfci-Field2-Length					INTEGER (1..10)					OPTIONAL,
	tfci-Field1-Information				ExplicitTFCS-Configuration		OPTIONAL,
	tfci-Field2-Information				TFCI-Field2-Information			OPTIONAL
}

SplitType ::=						ENUMERATED {
										hardSplit, logicalSplit }

T1-ReleaseTimer ::=					ENUMERATED {
										rt10, rt20, rt30, rt40, rt50,
										rt60, rt70, rt80, rt90, rt100,
										rt120, rt140, rt160, rt200, rt300,
										rt400 }

TFC-Subset ::=						CHOICE {
	minimumAllowedTFC-Number			TFC-Value,
	allowedTFC-List						AllowedTFC-List,
	non-allowedTFC-List					Non-allowedTFC-List,
	restrictedTrChInfoList				RestrictedTrChInfoList,
	fullTFCS							NULL
}

TFC-SubsetList ::=					SEQUENCE (SIZE (1.. maxTFCsub)) OF SEQUENCE {
	modeSpecificInfo					CHOICE {
		fdd									NULL,
		tdd									SEQUENCE {
			tfcs-ID								TFCS-Identity				OPTIONAL
		}
	},
	tfc-Subset							TFC-Subset
}

TFC-Value ::=						INTEGER (0..1023)

TFCI-Field2-Information ::=			CHOICE {
	tfci-Range							TFCI-RangeList,
	explicit-config						ExplicitTFCS-Configuration
}

TFCI-Range ::=						SEQUENCE {
	maxTFCIField2Value					INTEGER (1..1023),
	tfcs-InfoForDSCH					TFCS-InfoForDSCH
}

TFCI-RangeList ::=					SEQUENCE (SIZE (1..maxPDSCH-TFCIgroups)) OF
										TFCI-Range

TFCS ::=							CHOICE {
	normalTFCI-Signalling				ExplicitTFCS-Configuration,
	-- dummy is not used in this version of specification, it should
	-- not be sent and if received it should be ignored.
	dummy								SplitTFCI-Signalling
}

TFCS-Identity ::=					SEQUENCE {
	tfcs-ID								TFCS-IdentityPlain					DEFAULT 1,
	sharedChannelIndicator				BOOLEAN
}

TFCS-IdentityPlain ::=				INTEGER (1..8)

TFCS-InfoForDSCH ::=				CHOICE {
	ctfc2bit							INTEGER (0..3),
	ctfc4bit							INTEGER (0..15),
	ctfc6bit							INTEGER (0..63),
	ctfc8bit							INTEGER (0..255),
	ctfc12bit							INTEGER (0..4095),
	ctfc16bit							INTEGER (0..65535),
	ctfc24bit							INTEGER (0..16777215)
}

TFCS-ReconfAdd ::=					SEQUENCE{
	ctfcSize							CHOICE{
		ctfc2Bit							SEQUENCE (SIZE (1..maxTFC)) OF SEQUENCE {
			ctfc2								INTEGER (0..3),
			powerOffsetInformation				PowerOffsetInformation			OPTIONAL
		},
		ctfc4Bit							SEQUENCE (SIZE (1..maxTFC)) OF SEQUENCE {
			ctfc4 								INTEGER (0..15),
			powerOffsetInformation				PowerOffsetInformation			OPTIONAL
		},
		ctfc6Bit							SEQUENCE (SIZE (1..maxTFC)) OF SEQUENCE {
			ctfc6								INTEGER (0..63),
			powerOffsetInformation				PowerOffsetInformation			OPTIONAL
		},
		ctfc8Bit							SEQUENCE (SIZE (1..maxTFC)) OF SEQUENCE {
			ctfc8								INTEGER (0..255),
			powerOffsetInformation				PowerOffsetInformation			OPTIONAL
		},
		ctfc12Bit							SEQUENCE (SIZE(1..maxTFC)) OF SEQUENCE {
			ctfc12								INTEGER (0..4095),
 			powerOffsetInformation				PowerOffsetInformation			OPTIONAL
		},
		ctfc16Bit							SEQUENCE (SIZE (1..maxTFC)) OF SEQUENCE {
			ctfc16								INTEGER(0..65535),
			powerOffsetInformation				PowerOffsetInformation			OPTIONAL
		},
		ctfc24Bit							SEQUENCE (SIZE (1..maxTFC)) OF SEQUENCE {
			ctfc24								INTEGER(0..16777215),
			powerOffsetInformation				PowerOffsetInformation			OPTIONAL
		}
	}
}

TFCS-Removal ::=					SEQUENCE {
	tfci								INTEGER (0..1023)
}

TFCS-RemovalList ::=				SEQUENCE (SIZE (1..maxTFC)) OF
										TFCS-Removal

TimeDurationBeforeRetry ::=			INTEGER (1..256)

TM-SignallingInfo ::=				SEQUENCE {
	messType							MessType,
	tm-SignallingMode					CHOICE {
		mode1								NULL,
		mode2								SEQUENCE {
			-- in ul-controlledTrChList, TrCH-Type is always DCH
			ul-controlledTrChList				UL-ControlledTrChList
		}
	}
}

TransmissionTimeInterval ::=		ENUMERATED {
										tti10, tti20, tti40, tti80 }

TransmissionTimeValidity ::=		INTEGER (1..256)

TransportChannelIdentity ::=		INTEGER (1..32)

TransportChannelIdentityDCHandDSCH ::=	SEQUENCE {
	dch-transport-ch-id				TransportChannelIdentity,
	dsch-transport-ch-id			TransportChannelIdentity
}


TransportFormatSet ::=				CHOICE {
	dedicatedTransChTFS					DedicatedTransChTFS,
	commonTransChTFS					CommonTransChTFS
}

TransportFormatSet-LCR ::=				CHOICE {
	dedicatedTransChTFS					DedicatedTransChTFS,
	commonTransChTFS-LCR				CommonTransChTFS-LCR
}

-- The maximum allowed size of UL-AddReconfTransChInfoList sequence is 16
UL-AddReconfTransChInfoList ::=		SEQUENCE (SIZE (1..maxTrCHpreconf)) OF
										UL-AddReconfTransChInformation

-- The maximum allowed size of UL-AddReconfTransChInfoList-r6 sequence is 32
UL-AddReconfTransChInfoList-r6 ::=	SEQUENCE (SIZE (1..maxTrCH)) OF
										UL-AddReconfTransChInformation-r6

UL-AddReconfTransChInformation ::= SEQUENCE {
	ul-TransportChannelType				UL-TrCH-Type,
	transportChannelIdentity			TransportChannelIdentity,
	transportFormatSet					TransportFormatSet
}

UL-AddReconfTransChInformation-r6 ::= CHOICE {
	dch-usch							SEQUENCE {
		ul-TransportChannelType				UL-TrCH-Type,
		transportChannelIdentity			TransportChannelIdentity,
		transportFormatSet					TransportFormatSet
	},
	e-dch								SEQUENCE {
		tti									E-DCH-TTI,
		harq-Info							ENUMERATED { rv0 }				OPTIONAL,
		addReconf-MAC-d-Flow				E-DCH-AddReconf-MAC-d-Flow		OPTIONAL
	}
}

UL-CommonTransChInfo ::=			SEQUENCE {
	-- TABULAR: tfc-subset is applicable to FDD only, TDD specifies tfc-subset in individual 
	-- CCTrCH Info.
	tfc-Subset							TFC-Subset							OPTIONAL,
	prach-TFCS							TFCS								OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			ul-TFCS							TFCS
		},
		tdd									SEQUENCE {

			individualUL-CCTrCH-InfoList		IndividualUL-CCTrCH-InfoList
																			OPTIONAL
		}
	}																		OPTIONAL
}

UL-CommonTransChInfo-r4 ::=			SEQUENCE {
	-- TABULAR: tfc-subset is applicable to FDD only, TDD specifies tfc-subset in individual 
	-- CCTrCH Info.
	tfc-Subset							TFC-Subset							OPTIONAL,
	prach-TFCS							TFCS								OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			ul-TFCS								TFCS
		},
		tdd									SEQUENCE {
			individualUL-CCTrCH-InfoList		IndividualUL-CCTrCH-InfoList		OPTIONAL
		}
	}																		OPTIONAL,
	tfc-SubsetList						TFC-SubsetList						OPTIONAL
}

-- In UL-ControlledTrChList, TrCH-Type is always DCH
UL-ControlledTrChList ::=			SEQUENCE (SIZE (1..maxTrCH)) OF
										TransportChannelIdentity

UL-DeletedTransChInfoList ::=		SEQUENCE (SIZE (1..maxTrCH)) OF
										UL-TransportChannelIdentity

UL-DeletedTransChInfoList-r6 ::=	SEQUENCE (SIZE (1..maxTrCH)) OF
										UL-TransportChannelIdentity-r6

UL-TransportChannelIdentity ::=		SEQUENCE {
	ul-TransportChannelType				UL-TrCH-Type,
	ul-TransportChannelIdentity			TransportChannelIdentity
}

UL-TransportChannelIdentity-r6 ::=	CHOICE {
	dch-usch							SEQUENCE {
		ul-TransportChannelType				UL-TrCH-Type,
		ul-TransportChannelIdentity			TransportChannelIdentity
	},
	e-dch								E-DCH-MAC-d-FlowIdentity
}

UL-TrCH-Type ::=					ENUMERATED {dch, usch}

USCH-TransportChannelsInfo ::=		SEQUENCE (SIZE (1..maxTrCH)) OF
										SEQUENCE {
	usch-TransportChannelIdentity			TransportChannelIdentity,
	usch-TFS								TransportFormatSet
}
-- ***************************************************
--
--     PHYSICAL CHANNEL INFORMATION ELEMENTS (10.3.6)
--
-- ***************************************************

ACK-NACK-repetitionFactor ::=		INTEGER(1..4)

AC-To-ASC-Mapping ::=				INTEGER (0..7)

AC-To-ASC-MappingTable ::=			SEQUENCE (SIZE (maxASCmap)) OF
										AC-To-ASC-Mapping

AccessServiceClass-FDD ::=			SEQUENCE {
	availableSignatureStartIndex		INTEGER (0..15),
	availableSignatureEndIndex			INTEGER (0..15),

	assignedSubChannelNumber			BIT STRING {
											b3(0),
											b2(1),
											b1(2),
											b0(3)
											}	 (SIZE(4))
}

AccessServiceClass-TDD ::=			SEQUENCE {
	channelisationCodeIndices			BIT STRING	{
											chCodeIndex7(0),
											chCodeIndex6(1),
											chCodeIndex5(2),
											chCodeIndex4(3),
											chCodeIndex3(4),
											chCodeIndex2(5),
											chCodeIndex1(6),
											chCodeIndex0(7)
											} (SIZE(8))				OPTIONAL,
	subchannelSize						CHOICE {
		size1								NULL,
		size2								SEQUENCE {
			-- subch0 means bitstring '01' in the tabular, subch1 means bitsring '10'
			subchannels							ENUMERATED	{ subch0, subch1 }	OPTIONAL
		},
		size4								SEQUENCE {
			subchannels							BIT STRING	{
													subCh3(0), 
													subCh2(1), 
													subCh1(2), 
													subCh0(3) 
													} (SIZE(4))		OPTIONAL
		},
		size8								SEQUENCE {
			subchannels							BIT STRING	{
													subCh7(0), 
													subCh6(1), 
													subCh5(2), 
													subCh4(3), 
													subCh3(4), 
													subCh2(5), 
													subCh1(6), 
													subCh0(7) 
													} (SIZE(8))		OPTIONAL
		}
	}
}

AccessServiceClass-TDD-LCR-r4 ::=	SEQUENCE {
	availableSYNC-UlCodesIndics		    BIT STRING {
											sulCodeIndex7(0),
											sulCodeIndex6(1),
											sulCodeIndex5(2),
											sulCodeIndex4(3),
											sulCodeIndex3(4),
											sulCodeIndex2(5),
											sulCodeIndex1(6),
											sulCodeIndex0(7)
											} (SIZE(8))               OPTIONAL,
	subchannelSize						CHOICE {
		size1								NULL,
		size2								SEQUENCE {
			-- subch0 means bitstring '01' in the tabular, subch1 means bitsring '10'.
			subchannels							ENUMERATED	{ subch0, subch1 }	OPTIONAL
		},
		size4								SEQUENCE {
			subchannels							BIT STRING	{
													subCh3(0), 
													subCh2(1), 
													subCh1(2), 
													subCh0(3) 
													} (SIZE(4))			OPTIONAL
		},
		size8								SEQUENCE {
			subchannels							BIT STRING	{
													subCh7(0), 
													subCh6(1), 
													subCh5(2), 
													subCh4(3), 
													subCh3(4), 
													subCh2(5), 
													subCh1(6), 
													subCh0(7) 
													} (SIZE(8))			OPTIONAL
		}
	}
	
}

AdditionalPRACH-TF-and-TFCS-CCCH-IEs ::= SEQUENCE {
	powerOffsetInformation				PowerOffsetInformation,
	dynamicTFInformationCCCH			DynamicTFInformationCCCH
}

AdditionalPRACH-TF-and-TFCS-CCCH ::=	SEQUENCE {
	additionalPRACH-TF-and-TFCS-CCCH-IEs	AdditionalPRACH-TF-and-TFCS-CCCH-IEs	OPTIONAL
}

-- The order is the same as in the PRACH-SystemInformationList
AdditionalPRACH-TF-and-TFCS-CCCH-List ::=	SEQUENCE (SIZE (1..maxPRACH)) OF
										AdditionalPRACH-TF-and-TFCS-CCCH

AICH-Info ::=						SEQUENCE {
	channelisationCode256				ChannelisationCode256,
	sttd-Indicator						BOOLEAN,
	aich-TransmissionTiming				AICH-TransmissionTiming
}

AICH-PowerOffset ::=				INTEGER (-22..5)

AICH-TransmissionTiming ::=			ENUMERATED {
										e0, e1 }

AllocationPeriodInfo ::=			SEQUENCE {
	allocationActivationTime			INTEGER (0..255),
	allocationDuration					INTEGER (1..256)
}

-- Actual value Alpha = IE value * 0.125
Alpha ::=							INTEGER (0..8)

AP-AICH-ChannelisationCode ::=		INTEGER (0..255)

AP-PreambleScramblingCode ::=		INTEGER (0..79)

AP-Signature ::=					INTEGER (0..15)

AP-Signature-VCAM ::=				SEQUENCE {
	ap-Signature						AP-Signature,
	availableAP-SubchannelList			AvailableAP-SubchannelList OPTIONAL
}

AP-Subchannel ::=					INTEGER (0..11)

ASCSetting-FDD ::=						SEQUENCE {
	-- TABULAR: accessServiceClass-FDD is MD in tabular description
	-- Default value is previous ASC
	-- If this is the first ASC, the default value is all available signature and sub-channels
	accessServiceClass-FDD					AccessServiceClass-FDD	OPTIONAL
}

ASCSetting-TDD ::=						SEQUENCE {
	-- TABULAR: accessServiceClass-TDD is MD in tabular description
	-- Default value is previous ASC
	-- If this is the first ASC, the default value is all available channelisation codes and
	-- all available sub-channels with subchannelSize=size1.
	accessServiceClass-TDD					AccessServiceClass-TDD	OPTIONAL
}

ASCSetting-TDD-LCR-r4 ::=						SEQUENCE {
	-- TABULAR: accessServiceClass-TDD-LCR is MD in tabular description
	-- Default value is previous ASC
	-- If this is the first ASC, the default value is all available SYNC_UL codes and
	-- all available sub-channels with subchannelSize=size1. 
	accessServiceClass-TDD-LCR					AccessServiceClass-TDD-LCR-r4  	OPTIONAL
}

AvailableAP-Signature-VCAMList ::=	SEQUENCE (SIZE (1..maxPCPCH-APsig)) OF
										AP-Signature-VCAM

AvailableAP-SignatureList ::=		SEQUENCE (SIZE (1..maxPCPCH-APsig)) OF
										AP-Signature

AvailableAP-SubchannelList ::=		SEQUENCE (SIZE (1..maxPCPCH-APsubCh)) OF
										AP-Subchannel

AvailableMinimumSF-ListVCAM ::=		SEQUENCE (SIZE (1..maxPCPCH-SF)) OF
										AvailableMinimumSF-VCAM

AvailableMinimumSF-VCAM ::=			SEQUENCE {
	minimumSpreadingFactor				MinimumSpreadingFactor,
	nf-Max								NF-Max,
	maxAvailablePCPCH-Number			MaxAvailablePCPCH-Number,
	availableAP-Signature-VCAMList		AvailableAP-Signature-VCAMList
}

AvailableSignatures ::=			BIT STRING {
									signature15(0),
									signature14(1),
									signature13(2),
									signature12(3),
									signature11(4),
									signature10(5),
									signature9(6),
									signature8(7),
									signature7(8),
									signature6(9),
									signature5(10),
									signature4(11),
									signature3(12),
									signature2(13),
									signature1(14),
									signature0(15)
									}	 (SIZE(16))

AvailableSubChannelNumbers ::=		BIT STRING {
										subCh11(0),
										subCh10(1),
									 	subCh9(2),
									 	subCh8(3),
									 	subCh7(4),
									 	subCh6(5),
									 	subCh5(6),
									 	subCh4(7),
									 	subCh3(8),
									 	subCh2(9),
									 	subCh1(10),
									 	subCh0(11)
										} 	 (SIZE(12))

BEACON-PL-Est ::=					ENUMERATED { true }

BurstType ::=						ENUMERATED {
										type1, type2 }

-- Actual value Bler-Target = IE value * 0.05
Bler-Target ::=						INTEGER (-63..0)

CCTrCH-PowerControlInfo ::=			SEQUENCE {
	tfcs-Identity						TFCS-Identity						OPTIONAL,
	ul-DPCH-PowerControlInfo			UL-DPCH-PowerControlInfo
}

CCTrCH-PowerControlInfo-r4 ::=		SEQUENCE {
	tfcs-Identity						TFCS-Identity						OPTIONAL,
	ul-DPCH-PowerControlInfo			UL-DPCH-PowerControlInfo-r4
}

CCTrCH-PowerControlInfo-r5 ::=		SEQUENCE {
	tfcs-Identity						TFCS-Identity						OPTIONAL,
	ul-DPCH-PowerControlInfo			UL-DPCH-PowerControlInfo-r5
}

CD-AccessSlotSubchannel ::=			INTEGER (0..11)

CD-AccessSlotSubchannelList ::=		SEQUENCE (SIZE (1..maxPCPCH-CDsubCh)) OF
										CD-AccessSlotSubchannel

CD-CA-ICH-ChannelisationCode ::=	INTEGER (0..255)

CD-PreambleScramblingCode ::=		INTEGER (0..79)

CD-SignatureCode ::=				INTEGER (0..15)

CD-SignatureCodeList ::=			SEQUENCE (SIZE (1..maxPCPCH-CDsig)) OF
										CD-SignatureCode

CellAndChannelIdentity ::=			SEQUENCE {
	-- burstType may be set to either value and should be ignored by the receiver for 1.28 Mcps TDD.
	burstType							BurstType,
	midambleShift						MidambleShiftLong,
	timeslot							TimeslotNumber,
	cellParametersID					CellParametersID
	}

CellParametersID ::=				INTEGER (0..127)

Cfntargetsfnframeoffset ::=				INTEGER(0..255)

ChannelAssignmentActive ::=			CHOICE {
	notActive							NULL,
	isActive							AvailableMinimumSF-ListVCAM
}

ChannelisationCode256 ::=			INTEGER (0..255)

ChannelReqParamsForUCSM ::=			SEQUENCE {
	availableAP-SignatureList			AvailableAP-SignatureList,
	availableAP-SubchannelList			AvailableAP-SubchannelList			OPTIONAL
}

ClosedLoopTimingAdjMode ::=			ENUMERATED {
										slot1, slot2 }

CodeNumberDSCH ::=					INTEGER (0..255)

CodeRange ::=						SEQUENCE {
	pdsch-CodeMapList					PDSCH-CodeMapList
}

CodeWordSet ::=						ENUMERATED {
										longCWS,
										mediumCWS,
										shortCWS,
										ssdtOff }

CommonTimeslotInfo ::=				SEQUENCE {
	-- TABULAR: secondInterleavingMode is MD, but since it can be encoded in a single
	-- bit it is not defined as OPTIONAL.
	secondInterleavingMode				SecondInterleavingMode,
	tfci-Coding							TFCI-Coding							OPTIONAL,
	puncturingLimit						PuncturingLimit,
	repetitionPeriodAndLength			RepetitionPeriodAndLength			OPTIONAL
}

CommonTimeslotInfoSCCPCH ::=		SEQUENCE {
	-- TABULAR: secondInterleavingMode is MD, but since it can be encoded in a single
	-- bit it is not defined as OPTIONAL.
	secondInterleavingMode				SecondInterleavingMode,
	tfci-Coding							TFCI-Coding							OPTIONAL,
	puncturingLimit						PuncturingLimit,
	repetitionPeriodLengthAndOffset		RepetitionPeriodLengthAndOffset		OPTIONAL
}

ConstantValue ::=					INTEGER (-35..-10)

ConstantValueTdd ::=				INTEGER (-35..10)

CPCH-PersistenceLevels ::=			SEQUENCE {
	cpch-SetID							CPCH-SetID,
	dynamicPersistenceLevelTF-List		DynamicPersistenceLevelTF-List	
}

CPCH-PersistenceLevelsList ::=		SEQUENCE (SIZE (1..maxCPCHsets)) OF
										CPCH-PersistenceLevels

CPCH-SetInfo ::=					SEQUENCE {
	cpch-SetID							CPCH-SetID,
	transportFormatSet					TransportFormatSet,
	tfcs								TFCS,
	ap-PreambleScramblingCode			AP-PreambleScramblingCode,
	ap-AICH-ChannelisationCode			AP-AICH-ChannelisationCode,
	cd-PreambleScramblingCode			CD-PreambleScramblingCode,
	cd-CA-ICH-ChannelisationCode		CD-CA-ICH-ChannelisationCode,
	cd-AccessSlotSubchannelList			CD-AccessSlotSubchannelList			OPTIONAL,
	cd-SignatureCodeList				CD-SignatureCodeList				OPTIONAL,
	deltaPp-m							DeltaPp-m,
	ul-DPCCH-SlotFormat					UL-DPCCH-SlotFormat,
	n-StartMessage						N-StartMessage,
	n-EOT								N-EOT,
	-- TABULAR: VCAM info has been nested inside ChannelAssignmentActive,
	-- which in turn is mandatory since it's only a binary choice.
	channelAssignmentActive				ChannelAssignmentActive,
	cpch-StatusIndicationMode			CPCH-StatusIndicationMode,
	pcpch-ChannelInfoList				PCPCH-ChannelInfoList
}

CPCH-SetInfoList ::=				SEQUENCE (SIZE (1..maxCPCHsets)) OF
										CPCH-SetInfo

CPCH-StatusIndicationMode ::=		ENUMERATED {
										pa-mode,
										pamsf-mode }

CQI-RepetitionFactor ::=			INTEGER(1..4)

CSICH-PowerOffset ::=				INTEGER (-10..5)

-- DefaultDPCH-OffsetValueFDD and DefaultDPCH-OffsetValueTDD corresponds to 
-- IE "Default DPCH Offset Value" depending on the mode.
-- Actual value DefaultDPCH-OffsetValueFDD = IE value * 512 
DefaultDPCH-OffsetValueFDD ::=		INTEGER (0..599)

DefaultDPCH-OffsetValueTDD ::=		INTEGER (0..7)

DeltaPp-m ::=						INTEGER (-10..10)

DeltaCQI ::=						INTEGER (0..8)

DeltaNACK ::=						INTEGER (0..8)

DeltaACK ::=						INTEGER (0..8)

-- Actual value DeltaSIR = IE value * 0.1
DeltaSIR ::=						INTEGER (0..30)

DHS-Sync ::=						INTEGER (-20..10)

DL-CCTrCh ::=						SEQUENCE {
	tfcs-ID								TFCS-IdentityPlain					DEFAULT 1,
	timeInfo							TimeInfo,
	commonTimeslotInfo					CommonTimeslotInfo					OPTIONAL,
	dl-CCTrCH-TimeslotsCodes			DownlinkTimeslotsCodes				OPTIONAL,
	ul-CCTrChTPCList					UL-CCTrChTPCList					OPTIONAL	
}

DL-CCTrCh-r4 ::=					SEQUENCE {
	tfcs-ID								TFCS-IdentityPlain					DEFAULT 1,
	timeInfo							TimeInfo,
	commonTimeslotInfo					CommonTimeslotInfo					OPTIONAL,
	tddOption							CHOICE {
		tdd384								SEQUENCE {
			dl-CCTrCH-TimeslotsCodes			DownlinkTimeslotsCodes	OPTIONAL
		},
		tdd128								SEQUENCE {
			dl-CCTrCH-TimeslotsCodes			DownlinkTimeslotsCodes-LCR-r4	OPTIONAL
		}
	},
	ul-CCTrChTPCList					UL-CCTrChTPCList		OPTIONAL
}

DL-CCTrChList ::=					SEQUENCE (SIZE (1..maxCCTrCH)) OF
										DL-CCTrCh

DL-CCTrChList-r4 ::=				SEQUENCE (SIZE (1..maxCCTrCH)) OF
										DL-CCTrCh-r4

DL-CCTrChListToRemove ::=			SEQUENCE (SIZE (1..maxCCTrCH)) OF
										TFCS-IdentityPlain

DL-CCTrChTPCList ::=				SEQUENCE (SIZE (0..maxCCTrCH)) OF
											TFCS-Identity

DL-ChannelisationCode ::=			SEQUENCE {
	secondaryScramblingCode				SecondaryScramblingCode				OPTIONAL,
	sf-AndCodeNumber					SF512-AndCodeNumber,
	scramblingCodeChange				ScramblingCodeChange				OPTIONAL
}

DL-ChannelisationCodeList ::=		SEQUENCE (SIZE (1..maxDPCH-DLchan)) OF
										DL-ChannelisationCode

DL-CommonInformation ::=			SEQUENCE {
	dl-DPCH-InfoCommon					DL-DPCH-InfoCommon			OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			defaultDPCH-OffsetValue				DefaultDPCH-OffsetValueFDD	OPTIONAL,
			dpch-CompressedModeInfo				DPCH-CompressedModeInfo		OPTIONAL,
			tx-DiversityMode					TX-DiversityMode			OPTIONAL,
			-- dummy is not used in this version of the specification, it should
			-- not be sent and if received it should be ignored.
			dummy								SSDT-Information			OPTIONAL
		},
		tdd									SEQUENCE {
			defaultDPCH-OffsetValue				DefaultDPCH-OffsetValueTDD	OPTIONAL
		}
	}
}

DL-CommonInformation-r4 ::=			SEQUENCE {
	dl-DPCH-InfoCommon					DL-DPCH-InfoCommon-r4		OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			defaultDPCH-OffsetValue				DefaultDPCH-OffsetValueFDD	OPTIONAL,
			dpch-CompressedModeInfo				DPCH-CompressedModeInfo		OPTIONAL,
			tx-DiversityMode					TX-DiversityMode			OPTIONAL,
			-- dummy is not used in this version of the specification, it should
			-- not be sent and if received it should be ignored.
			dummy								SSDT-Information-r4			OPTIONAL
		},
		tdd									SEQUENCE {
			tddOption							CHOICE {
				tdd384								NULL,
				tdd128								SEQUENCE {
					tstd-Indicator						BOOLEAN
				}
			},
			defaultDPCH-OffsetValue				DefaultDPCH-OffsetValueTDD	OPTIONAL
		}
	}
}


DL-CommonInformation-r5 ::=			SEQUENCE {
	dl-DPCH-InfoCommon					DL-DPCH-InfoCommon-r4			OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			defaultDPCH-OffsetValue				DefaultDPCH-OffsetValueFDD	OPTIONAL,
			dpch-CompressedModeInfo				DPCH-CompressedModeInfo		OPTIONAL,
			tx-DiversityMode					TX-DiversityMode			OPTIONAL,
			-- dummy is not used in this version of the specification, it should
			-- not be sent and if received it should be ignored.
			dummy								SSDT-Information-r4			OPTIONAL
		},
		tdd									SEQUENCE {
			tddOption							CHOICE {
				tdd384								NULL,
				tdd128								SEQUENCE {
					tstd-Indicator						BOOLEAN
				}
			},
			defaultDPCH-OffsetValue				DefaultDPCH-OffsetValueTDD	OPTIONAL
		}
	},
	mac-hsResetIndicator				ENUMERATED { true }			OPTIONAL
}

DL-CommonInformation-r6 ::=			SEQUENCE {
	dl-dpchInfoCommon					CHOICE {
		dl-DPCH-InfoCommon					DL-DPCH-InfoCommon-r6,
		dl-FDPCH-InfoCommon					DL-FDPCH-InfoCommon-r6
	}																		OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			defaultDPCH-OffsetValue				DefaultDPCH-OffsetValueFDD	OPTIONAL,
			dpch-CompressedModeInfo				DPCH-CompressedModeInfo		OPTIONAL,
			tx-DiversityMode					TX-DiversityMode			OPTIONAL
		},
		tdd									SEQUENCE {
			tddOption							CHOICE {
				tdd384								NULL,
				tdd128								SEQUENCE {
					tstd-Indicator						BOOLEAN
				}
			},
			defaultDPCH-OffsetValue				DefaultDPCH-OffsetValueTDD	OPTIONAL
		}
	},
	mac-hsResetIndicator				ENUMERATED { true }			OPTIONAL,
	postVerificationPeriod				ENUMERATED { true }			OPTIONAL
}

DL-CommonInformationPost ::=		SEQUENCE {
	dl-DPCH-InfoCommon					DL-DPCH-InfoCommonPost
}

DL-CommonInformationPredef ::=		SEQUENCE {
	dl-DPCH-InfoCommon					DL-DPCH-InfoCommonPredef	OPTIONAL
}

DL-CompressedModeMethod ::=			ENUMERATED {
		-- dummy is not used in this version of the specification, it should
		-- not be sent and if received it should be ignored.
										dummy, sf-2,
										higherLayerScheduling }

DL-DPCH-InfoCommon ::=				SEQUENCE {
	cfnHandling							CHOICE {
		maintain							NULL,
		initialise							SEQUENCE {
			-- IE dummy is not used in this version of the specification
			-- The IE should not be sent and if received it should be ignored
			dummy								Cfntargetsfnframeoffset				OPTIONAL
		}
	},
	modeSpecificInfo					CHOICE {
		fdd 								SEQUENCE {
			dl-DPCH-PowerControlInfo			DL-DPCH-PowerControlInfo			OPTIONAL,
			powerOffsetPilot-pdpdch				PowerOffsetPilot-pdpdch,
			dl-rate-matching-restriction		Dl-rate-matching-restriction		OPTIONAL,
			-- TABULAR: The number of pilot bits is nested inside the spreading factor.
			spreadingFactorAndPilot				SF512-AndPilot,
			positionFixedOrFlexible				PositionFixedOrFlexible,
			tfci-Existence						BOOLEAN
		},
		tdd									SEQUENCE {
			dl-DPCH-PowerControlInfo			DL-DPCH-PowerControlInfo			OPTIONAL
		}
	}
}

DL-DPCH-InfoCommon-r4 ::=			SEQUENCE {
	cfnHandling							CHOICE {
		maintain							NULL,
		initialise							SEQUENCE {
			-- IE dummy is not used in this version of the specification
			-- The IE should not be sent and if received it should be ignored
			dummy								Cfntargetsfnframeoffset				OPTIONAL
		}
	},
	modeSpecificInfo					CHOICE {
		fdd 								SEQUENCE {
			dl-DPCH-PowerControlInfo			DL-DPCH-PowerControlInfo			OPTIONAL,
			powerOffsetPilot-pdpdch				PowerOffsetPilot-pdpdch,
			dl-rate-matching-restriction		Dl-rate-matching-restriction		OPTIONAL,
			-- TABULAR: The number of pilot bits is nested inside the spreading factor.
			spreadingFactorAndPilot				SF512-AndPilot,
			positionFixedOrFlexible				PositionFixedOrFlexible,
			tfci-Existence						BOOLEAN
		},
		tdd									SEQUENCE {
			dl-DPCH-PowerControlInfo			DL-DPCH-PowerControlInfo			OPTIONAL
		}
	},
-- The IE mac-d-HFN-initial-value should be absent in the RRCConnectionSetup-r4-IEs or 
-- RRCConnectionSetup-r5-IEs or HandoverToUTRANCommand-r4-IEs or HandoverToUTRANCommand-r5-IEs and
-- if the IE is included, the general error handling for conditional IEs applies.
	mac-d-HFN-initial-value				MAC-d-HFN-initial-value				OPTIONAL

}

DL-DPCH-InfoCommon-r6 ::=				SEQUENCE {
	cfnHandling								CHOICE {
		maintain								SEQUENCE {
			timingmaintainedsynchind				TimingMaintainedSynchInd			OPTIONAL
		},
		initialise								NULL
	},
	modeSpecificInfo						CHOICE {
		fdd 									SEQUENCE {
			dl-DPCH-PowerControlInfo				DL-DPCH-PowerControlInfo			OPTIONAL,
			powerOffsetPilot-pdpdch					PowerOffsetPilot-pdpdch,
			dl-rate-matching-restriction			Dl-rate-matching-restriction		OPTIONAL,
			-- TABULAR: The number of pilot bits is nested inside the spreading factor.
			spreadingFactorAndPilot					SF512-AndPilot,
			positionFixedOrFlexible					PositionFixedOrFlexible,
			tfci-Existence							BOOLEAN
		},
		tdd									SEQUENCE {
			dl-DPCH-PowerControlInfo			DL-DPCH-PowerControlInfo			OPTIONAL
		}
	},
	-- The IE mac-d-HFN-initial-value should be absent in the RRCConnectionSetup and the
	-- HandoverToUTRANCommand messages. If the IE is included, the general error handling
	-- for conditional IEs applies.
	mac-d-HFN-initial-value				MAC-d-HFN-initial-value				OPTIONAL
}

DL-DPCH-InfoCommonPost ::=			SEQUENCE {
	dl-DPCH-PowerControlInfo			DL-DPCH-PowerControlInfo				OPTIONAL
}

DL-DPCH-InfoCommonPredef ::=		SEQUENCE {
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			-- TABULAR: The number of pilot bits is nested inside the spreading factor.
			spreadingFactorAndPilot				SF512-AndPilot,
			positionFixedOrFlexible				PositionFixedOrFlexible,
			tfci-Existence						BOOLEAN
		},
		tdd									SEQUENCE {
			commonTimeslotInfo					CommonTimeslotInfo
		}
	}
}

DL-DPCH-InfoPerRL ::=				CHOICE {
	fdd									SEQUENCE {
		pCPICH-UsageForChannelEst			PCPICH-UsageForChannelEst,
		dpch-FrameOffset					DPCH-FrameOffset,
		secondaryCPICH-Info					SecondaryCPICH-Info				OPTIONAL,
		dl-ChannelisationCodeList			DL-ChannelisationCodeList,
		tpc-CombinationIndex				TPC-CombinationIndex,
		-- dummy is not used in this version of the specification, it should
		-- not be sent and if received it should be ignored.
		dummy								SSDT-CellIdentity				OPTIONAL,
		closedLoopTimingAdjMode				ClosedLoopTimingAdjMode			OPTIONAL
	},
	tdd									SEQUENCE {
		dl-CCTrChListToEstablish			DL-CCTrChList					OPTIONAL,
		dl-CCTrChListToRemove				DL-CCTrChListToRemove			OPTIONAL
	}
}

DL-DPCH-InfoPerRL-r4 ::=			CHOICE {
	fdd									SEQUENCE {
		pCPICH-UsageForChannelEst			PCPICH-UsageForChannelEst,
		dpch-FrameOffset					DPCH-FrameOffset,
		secondaryCPICH-Info					SecondaryCPICH-Info				OPTIONAL,
		dl-ChannelisationCodeList			DL-ChannelisationCodeList,
		tpc-CombinationIndex				TPC-CombinationIndex,
		-- dummy is not used in this version of the specification, it should
		-- not be sent and if received it should be ignored.
		dummy								SSDT-CellIdentity				OPTIONAL,
		closedLoopTimingAdjMode				ClosedLoopTimingAdjMode			OPTIONAL
	},
	tdd									SEQUENCE {
		dl-CCTrChListToEstablish			DL-CCTrChList-r4				OPTIONAL,
		dl-CCTrChListToRemove				DL-CCTrChListToRemove			OPTIONAL
	}
}

DL-DPCH-InfoPerRL-r5 ::=			CHOICE {
	fdd									SEQUENCE {
		pCPICH-UsageForChannelEst			PCPICH-UsageForChannelEst,
		dpch-FrameOffset					DPCH-FrameOffset,
		secondaryCPICH-Info					SecondaryCPICH-Info				OPTIONAL,
		dl-ChannelisationCodeList			DL-ChannelisationCodeList,
		tpc-CombinationIndex				TPC-CombinationIndex,
		powerOffsetTPC-pdpdch				PowerOffsetTPC-pdpdch			OPTIONAL,
		-- dummy is not used in this version of the specification, it should
		-- not be sent and if received it should be ignored.
		dummy								SSDT-CellIdentity				OPTIONAL,
		closedLoopTimingAdjMode				ClosedLoopTimingAdjMode			OPTIONAL
	},
	tdd									SEQUENCE {
		dl-CCTrChListToEstablish			DL-CCTrChList-r4				OPTIONAL,
		dl-CCTrChListToRemove				DL-CCTrChListToRemove			OPTIONAL
	}
}

DL-DPCH-InfoPerRL-r6 ::=			CHOICE {
	fdd									SEQUENCE {
		pCPICH-UsageForChannelEst			PCPICH-UsageForChannelEst,
		dpch-FrameOffset					DPCH-FrameOffset,
		secondaryCPICH-Info					SecondaryCPICH-Info				OPTIONAL,
		dl-ChannelisationCodeList			DL-ChannelisationCodeList,
		tpc-CombinationIndex				TPC-CombinationIndex,
		powerOffsetTPC-pdpdch				PowerOffsetTPC-pdpdch			OPTIONAL,
		closedLoopTimingAdjMode				ClosedLoopTimingAdjMode			OPTIONAL
	},
	tdd									SEQUENCE {
		dl-CCTrChListToEstablish			DL-CCTrChList-r4				OPTIONAL,
		dl-CCTrChListToRemove				DL-CCTrChListToRemove			OPTIONAL
	}
}

DL-FDPCH-InfoPerRL-r6 ::=			SEQUENCE {
	pCPICH-UsageForChannelEst			PCPICH-UsageForChannelEst,
	fdpch-FrameOffset					DPCH-FrameOffset,
	secondaryCPICH-Info					SecondaryCPICH-Info				OPTIONAL,
	secondaryScramblingCode				SecondaryScramblingCode			OPTIONAL,
	dl-ChannelisationCode				INTEGER (0..255),
	tpc-CombinationIndex				TPC-CombinationIndex
}

DL-DPCH-InfoPerRL-PostFDD ::=								SEQUENCE {
		pCPICH-UsageForChannelEst				PCPICH-UsageForChannelEst,
		dl-ChannelisationCode					DL-ChannelisationCode,
		tpc-CombinationIndex					TPC-CombinationIndex
}

DL-DPCH-InfoPerRL-PostTDD ::=				SEQUENCE {
	dl-DPCH-TimeslotsCodes						DownlinkTimeslotsCodes
}

DL-DPCH-InfoPerRL-PostTDD-LCR-r4 ::=		SEQUENCE {
	dl-CCTrCH-TimeslotsCodes					DownlinkTimeslotsCodes-LCR-r4
}

DL-DPCH-PowerControlInfo ::=			SEQUENCE {
	modeSpecificInfo						CHOICE {
		fdd										SEQUENCE {
			dpc-Mode								DPC-Mode
		},
		tdd										SEQUENCE {
			tpc-StepSizeTDD							TPC-StepSizeTDD			OPTIONAL
		}
	}
}

DL-FDPCH-InfoCommon-r6 ::=			SEQUENCE {
	cfnHandling							CHOICE {
		maintain							SEQUENCE {
			timingmaintainedsynchind			TimingMaintainedSynchInd			OPTIONAL
		},
		initialise							NULL
	},
	dl-FDPCH-PowerControlInfo			DL-DPCH-PowerControlInfo			OPTIONAL,
-- Actual value dl-FDPCH-TPCcommandErrorRate = IE value * 0.01
-- dl-FDPCH-TPCcommandErrorRate values 11..16 are spare and shall not be used in this version of 
-- the protocol
	dl-FDPCH-TPCcommandErrorRate		INTEGER (1..16)		OPTIONAL
}

DL-FrameType ::=					ENUMERATED {
										dl-FrameTypeA, dl-FrameTypeB }

DL-HSPDSCH-Information ::=			SEQUENCE {
	hs-scch-Info					HS-SCCH-Info	OPTIONAL,
	measurement-feedback-Info		Measurement-Feedback-Info	OPTIONAL,
	modeSpecificInfo				CHOICE {
	tdd								CHOICE{
			tdd384							SEQUENCE {
				dl-HSPDSCH-TS-Configuration	DL-HSPDSCH-TS-Configuration	  	OPTIONAL
			},
			tdd128							SEQUENCE {
				hs-PDSCH-Midamble-Configuration-tdd128
						HS-PDSCH-Midamble-Configuration-TDD128				OPTIONAL
			}
		},
		fdd							NULL
	}
}

DL-HSPDSCH-Information-r6 ::=	SEQUENCE {
	hs-scch-Info					HS-SCCH-Info-r6							OPTIONAL,
	measurement-feedback-Info		Measurement-Feedback-Info				OPTIONAL,
	modeSpecificInfo				CHOICE {
		tdd								CHOICE {
			tdd384							SEQUENCE {
				dl-HSPDSCH-TS-Configuration		DL-HSPDSCH-TS-Configuration	OPTIONAL
			},
			tdd128							SEQUENCE {
				hs-PDSCH-Midamble-Configuration-tdd128
						HS-PDSCH-Midamble-Configuration-TDD128				OPTIONAL
			}
		},
		fdd							NULL
	}
}

-- The IE 'DL-HSPDSCH-TS-Configuration' applies to tdd-384 REL-5 onward
DL-HSPDSCH-TS-Configuration ::=		SEQUENCE (SIZE (1..maxTS-1)) OF
										SEQUENCE {
	timeslot								TimeslotNumber,
	midambleShiftAndBurstType				MidambleShiftAndBurstType-DL
}

DL-InformationPerRL ::=				SEQUENCE {
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			primaryCPICH-Info					PrimaryCPICH-Info,
			-- dummy1 and dummy 2 are not used in this version of specification, they should
			-- not be sent and if received they should be ignored.
			dummy1								PDSCH-SHO-DCH-Info			OPTIONAL,
			dummy2								PDSCH-CodeMapping			OPTIONAL
		},
		tdd									PrimaryCCPCH-Info
	},
	dl-DPCH-InfoPerRL					DL-DPCH-InfoPerRL					OPTIONAL,
	-- dummy is not used in this version of the specification, it should
	-- not be sent and if received it should be ignored.
	dummy								SCCPCH-InfoForFACH					OPTIONAL
}

DL-InformationPerRL-r4 ::=			SEQUENCE {
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			primaryCPICH-Info					PrimaryCPICH-Info,
			-- dummy1 and dummy 2 are not used in this version of specification, they should
			-- not be sent and if received they should be ignored.
			dummy1								PDSCH-SHO-DCH-Info			OPTIONAL,
			dummy2								PDSCH-CodeMapping			OPTIONAL
		},
		tdd									PrimaryCCPCH-Info-r4
	},
	dl-DPCH-InfoPerRL					DL-DPCH-InfoPerRL-r4				OPTIONAL,
	-- dummy is not used in this version of the specification, it should
	-- not be sent and if received it should be ignored.
	dummy								SCCPCH-InfoForFACH-r4				OPTIONAL,
	cell-id								CellIdentity						OPTIONAL
}

DL-InformationPerRL-r5 ::=			SEQUENCE {
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			primaryCPICH-Info					PrimaryCPICH-Info,
			-- dummy1 and dummy 2 are not used in this version of specification, they should
			-- not be sent and if received they should be ignored.
			dummy1								PDSCH-SHO-DCH-Info			OPTIONAL,
			dummy2								PDSCH-CodeMapping			OPTIONAL,
			servingHSDSCH-RL-indicator			BOOLEAN
		},
		tdd									PrimaryCCPCH-Info-r4
	},
	dl-DPCH-InfoPerRL					DL-DPCH-InfoPerRL-r5				OPTIONAL,
	-- dummy is not used in this version of the specification, it should
	-- not be sent and if received it should be ignored.
	dummy								SCCPCH-InfoForFACH-r4				OPTIONAL,
	cell-id								CellIdentity						OPTIONAL
}

DL-InformationPerRL-r5bis ::=		SEQUENCE {
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			primaryCPICH-Info					PrimaryCPICH-Info,
			-- dummy1 and dummy 2 are not used in this version of specification, they should
			-- not be sent and if received they should be ignored.
			dummy1								PDSCH-SHO-DCH-Info			OPTIONAL,
			dummy2								PDSCH-CodeMapping			OPTIONAL
		},
		tdd									PrimaryCCPCH-Info-r4
	},
	dl-DPCH-InfoPerRL					DL-DPCH-InfoPerRL-r5				OPTIONAL,
	-- dummy is not used in this version of the specification, it should
	-- not be sent and if received it should be ignored.
	dummy								SCCPCH-InfoForFACH-r4				OPTIONAL,
	cell-id								CellIdentity						OPTIONAL
}

DL-InformationPerRL-r6 ::=			SEQUENCE {
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			primaryCPICH-Info					PrimaryCPICH-Info,
			servingHSDSCH-RL-indicator			BOOLEAN,
			servingEDCH-RL-indicator			BOOLEAN
		},
		tdd									PrimaryCCPCH-Info-r4
	},
	dl-dpchInfo							CHOICE {
		dl-DPCH-InfoPerRL					DL-DPCH-InfoPerRL-r6,
		dl-FDPCH-InfoPerRL					DL-FDPCH-InfoPerRL-r6
	}																		OPTIONAL,
	e-AGCH-Information					E-AGCH-Information					OPTIONAL,
	e-HICH-Info							CHOICE	{
		e-HICH-Information					E-HICH-Information,
		releaseIndicator					NULL
	}	OPTIONAL,
	e-RGCH-Info							CHOICE	{
		e-RGCH-Information					E-RGCH-Information,
		releaseIndicator					NULL
	}	OPTIONAL,
	cell-id								CellIdentity						OPTIONAL
}

DL-InformationPerRL-List ::=		SEQUENCE (SIZE (1..maxRL)) OF
										DL-InformationPerRL

DL-InformationPerRL-List-r4 ::=		SEQUENCE (SIZE (1..maxRL)) OF
										DL-InformationPerRL-r4

DL-InformationPerRL-List-r5 ::=		SEQUENCE (SIZE (1..maxRL)) OF
										DL-InformationPerRL-r5

DL-InformationPerRL-List-r6 ::=		SEQUENCE (SIZE (1..maxRL)) OF
										DL-InformationPerRL-r6

DL-InformationPerRL-List-r5bis ::=		SEQUENCE (SIZE (1..maxRL)) OF
											DL-InformationPerRL-r5bis

DL-InformationPerRL-ListPostFDD ::=	SEQUENCE (SIZE (1..maxRL)) OF
										DL-InformationPerRL-PostFDD

DL-InformationPerRL-PostFDD ::=		SEQUENCE {
			primaryCPICH-Info					PrimaryCPICH-Info,
	dl-DPCH-InfoPerRL					DL-DPCH-InfoPerRL-PostFDD
}

DL-InformationPerRL-PostTDD ::=		SEQUENCE {
	primaryCCPCH-Info					PrimaryCCPCH-InfoPost,
	dl-DPCH-InfoPerRL					DL-DPCH-InfoPerRL-PostTDD
}

DL-InformationPerRL-PostTDD-LCR-r4 ::=	SEQUENCE {
	primaryCCPCH-Info					PrimaryCCPCH-InfoPostTDD-LCR-r4,
	dl-DPCH-InfoPerRL					DL-DPCH-InfoPerRL-PostTDD-LCR-r4
}

DL-PDSCH-Information ::=			SEQUENCE {
	-- dummy1 and dummy 2 are not used in this version of specification, it should
	-- not be sent and if received it should be ignored.
	dummy1								PDSCH-SHO-DCH-Info					OPTIONAL,
	dummy2								PDSCH-CodeMapping					OPTIONAL
}

Dl-rate-matching-restriction ::=	SEQUENCE {
	restrictedTrCH-InfoList				RestrictedTrCH-InfoList				OPTIONAL
}

DL-TPC-PowerOffsetPerRL ::=		SEQUENCE {
		powerOffsetTPC-pdpdch				PowerOffsetTPC-pdpdch			OPTIONAL
}

-- NOTE: The radio links in the following list have a one-to-one mapping with the 
-- radio links in the message.
DL-TPC-PowerOffsetPerRL-List ::=	SEQUENCE (SIZE (1..maxRL)) OF
										DL-TPC-PowerOffsetPerRL

DL-TS-ChannelisationCode ::=		ENUMERATED {
										cc16-1, cc16-2, cc16-3, cc16-4,
										cc16-5, cc16-6, cc16-7, cc16-8,
										cc16-9, cc16-10, cc16-11, cc16-12,
										cc16-13, cc16-14, cc16-15, cc16-16 }

DL-TS-ChannelisationCodesShort ::=	SEQUENCE {
	codesRepresentation					CHOICE {
		consecutive							SEQUENCE {
			firstChannelisationCode				DL-TS-ChannelisationCode,
			lastChannelisationCode				DL-TS-ChannelisationCode
		},
		bitmap								BIT STRING {
												chCode16-SF16(0),
												chCode15-SF16(1),
												chCode14-SF16(2),
												chCode13-SF16(3),
												chCode12-SF16(4),
												chCode11-SF16(5),
												chCode10-SF16(6),
												chCode9-SF16(7),
												chCode8-SF16(8),
												chCode7-SF16(9),
												chCode6-SF16(10),
												chCode5-SF16(11),
												chCode4-SF16(12),
												chCode3-SF16(13),
												chCode2-SF16(14),
												chCode1-SF16(15)
												} 	(SIZE (16))
	}
}

DownlinkAdditionalTimeslots ::=		SEQUENCE {
	parameters							CHOICE {
		sameAsLast							SEQUENCE {
			timeslotNumber						TimeslotNumber
		},
		newParameters						SEQUENCE {
			individualTimeslotInfo				IndividualTimeslotInfo,
			dl-TS-ChannelisationCodesShort		DL-TS-ChannelisationCodesShort
		}
	}
}

DownlinkAdditionalTimeslots-LCR-r4 ::=	SEQUENCE {
	parameters							CHOICE {
		sameAsLast							SEQUENCE {
			timeslotNumber						TimeslotNumber-LCR-r4
		},
		newParameters						SEQUENCE {
			individualTimeslotInfo				IndividualTimeslotInfo-LCR-r4,
			dl-TS-ChannelisationCodesShort		DL-TS-ChannelisationCodesShort
		}
	}
}

DownlinkTimeslotsCodes ::=		SEQUENCE {
	firstIndividualTimeslotInfo			IndividualTimeslotInfo,
	dl-TS-ChannelisationCodesShort		DL-TS-ChannelisationCodesShort,
	moreTimeslots						CHOICE {
		noMore								NULL,
		additionalTimeslots					CHOICE {
			consecutive							INTEGER (1..maxTS-1),
			timeslotList						SEQUENCE (SIZE (1..maxTS-1)) OF
													DownlinkAdditionalTimeslots
		}
	}
}

DownlinkTimeslotsCodes-LCR-r4 ::=	SEQUENCE {
	firstIndividualTimeslotInfo			IndividualTimeslotInfo-LCR-r4,
	dl-TS-ChannelisationCodesShort		DL-TS-ChannelisationCodesShort,
	moreTimeslots						CHOICE {
		noMore								NULL,
		additionalTimeslots					CHOICE {
			consecutive							INTEGER (1..maxTS-LCR-1),
			timeslotList						SEQUENCE (SIZE (1..maxTS-LCR-1)) OF
													DownlinkAdditionalTimeslots-LCR-r4
		}
	}
}

DPC-Mode ::=						ENUMERATED {
										singleTPC,
										tpcTripletInSoft }	

-- Actual value DPCCH-PowerOffset = IE value * 2
DPCCH-PowerOffset ::=				INTEGER (-82..-3)

-- Actual value DPCCH-PowerOffset2 = 2 + (IE value * 4)
DPCCH-PowerOffset2 ::=				INTEGER (-28..-13)

DPCH-CompressedModeInfo ::=			SEQUENCE {
	tgp-SequenceList					TGP-SequenceList
}

DPCH-CompressedModeStatusInfo ::=	SEQUENCE {
	tgps-Reconfiguration-CFN			TGPS-Reconfiguration-CFN,
	tgp-SequenceShortList					SEQUENCE (SIZE (1..maxTGPS)) OF
											TGP-SequenceShort
}

-- Actual value DPCH-FrameOffset = IE value * 256
DPCH-FrameOffset::=					INTEGER (0..149)

DSCH-Mapping ::=					SEQUENCE {
	maxTFCI-Field2Value					MaxTFCI-Field2Value,
	spreadingFactor						SF-PDSCH,
	codeNumber							CodeNumberDSCH,
	multiCodeInfo						MultiCodeInfo
}

DSCH-MappingList ::=				SEQUENCE (SIZE (1..maxPDSCH-TFCIgroups)) OF
										DSCH-Mapping

DSCH-RadioLinkIdentifier ::=		INTEGER (0..511)

DSCH-TransportChannelsInfo ::=		SEQUENCE (SIZE (1..maxTrCH)) OF
										SEQUENCE {
	dsch-transport-channel-identity			TransportChannelIdentity,
	dsch-TFS								TransportFormatSet
}
DurationTimeInfo ::=				INTEGER (1..4096)

DynamicPersistenceLevel ::=			INTEGER (1..8)

DynamicPersistenceLevelList ::=		SEQUENCE (SIZE (1..maxPRACH)) OF
										DynamicPersistenceLevel

DynamicPersistenceLevelTF-List ::= SEQUENCE (SIZE (1..maxTF-CPCH)) OF
										DynamicPersistenceLevel

DynamicTFInformationCCCH ::=		SEQUENCE {
	octetModeRLC-SizeInfoType2			OctetModeRLC-SizeInfoType2
}

E-AGCH-ChannelisationCode ::=		INTEGER (0..255)

E-AGCH-Information ::=				SEQUENCE {
	e-AGCH-ChannelisationCode			E-AGCH-ChannelisationCode
}

E-DCH-MinimumSet-E-TFCI ::=			INTEGER (0..127)

E-DCH-ReconfigurationInfo ::=	SEQUENCE {
	e-DCH-RL-InfoNewServingCell			E-DCH-RL-InfoNewServingCell				OPTIONAL,
	e-DCH-RL-InfoOtherCellList			SEQUENCE (SIZE (1..maxEDCHRL)) OF
											E-DCH-RL-InfoOtherCell				OPTIONAL
}

E-DCH-RL-InfoNewServingCell ::=		SEQUENCE {
	primaryCPICH-Info					PrimaryCPICH-Info,
	e-AGCH-Information					E-AGCH-Information,
	servingGrant						SEQUENCE {
		value								INTEGER (0..38)						OPTIONAL,
		primary-Secondary-GrantSelector		ENUMERATED { primary, secondary }
	}	OPTIONAL,
	e-DPCCH-DPCCH-PowerOffset			E-DPCCH-DPCCH-PowerOffset				OPTIONAL,
	reference-E-TFCIs					E-DPDCH-Reference-E-TFCIList			OPTIONAL,
	powerOffsetForSchedInfo				INTEGER (0..6)							OPTIONAL,
	threeIndexStepThreshold				INTEGER (0..37)							OPTIONAL,
	twoIndexStepThreshold				INTEGER (0..37)							OPTIONAL,
	e-HICH-Information					E-HICH-Information		OPTIONAL,
	e-RGCH-Info							CHOICE	{
		e-RGCH-Information					E-RGCH-Information,
		releaseIndicator					NULL
	}	OPTIONAL
}

E-DCH-RL-InfoOtherCell ::=			SEQUENCE {
	primaryCPICH-Info					PrimaryCPICH-Info,
	e-HICH-Info							CHOICE {
		e-HICH-Information					E-HICH-Information,
		releaseIndicator					NULL
	}	OPTIONAL,
	e-RGCH-Info							CHOICE {
		e-RGCH-Information					E-RGCH-Information,
		releaseIndicator					NULL
	}	OPTIONAL
}

E-DPCCH-Info ::=					SEQUENCE {
	e-DPCCH-DPCCH-PowerOffset			E-DPCCH-DPCCH-PowerOffset,
	happyBit-DelayCondition				HappyBit-DelayCondition
}

E-DPCCH-DPCCH-PowerOffset ::=		INTEGER (0..8)

E-DPDCH-Info ::=					SEQUENCE {
	e-TFCI-TableIndex					E-TFCI-TableIndex,
	e-DCH-MinimumSet-E-TFCI				E-DCH-MinimumSet-E-TFCI				OPTIONAL,
	reference-E-TFCIs					E-DPDCH-Reference-E-TFCIList,
	maxChannelisationCodes				E-DPDCH-MaxChannelisationCodes,
	pl-NonMax							E-DPDCH-PL-NonMax,
	schedulingInfoConfiguration			E-DPDCH-SchedulingInfoConfiguration,
	schedulingTransmConfiguration		E-DPDCH-SchedulingTransmConfiguration,
	threeIndexStepThreshold				INTEGER (0..37)						OPTIONAL,
	twoIndexStepThreshold				INTEGER (0..37)						OPTIONAL
}

E-DPDCH-PeriodicyOfSchedInfo ::=	ENUMERATED {
										everyEDCHTTI, ms4, ms10, ms20, ms50, ms100, ms200, ms500,
										ms1000 }

-- The actual value of E-DPDCH-PL-NonMax is: IE value * 0.04
E-DPDCH-PL-NonMax ::=				INTEGER (11..25)

E-DPDCH-Reference-E-TFCI ::=		SEQUENCE {
	reference-E-TFCI					INTEGER (0..127),
	reference-E-TFCI-PO					INTEGER (0..29)
}

E-DPDCH-Reference-E-TFCIList ::=	SEQUENCE (SIZE (1..8)) OF E-DPDCH-Reference-E-TFCI

E-DPDCH-SchedulingInfoConfiguration ::= SEQUENCE {
	periodicityOfSchedInfo-NoGrant		E-DPDCH-PeriodicyOfSchedInfo		OPTIONAL,
	periodicityOfSchedInfo-Grant		E-DPDCH-PeriodicyOfSchedInfo		OPTIONAL,
	powerOffsetForSchedInfo				INTEGER (0..6)
}

E-DPDCH-SchedulingTransmConfiguration ::= SEQUENCE {
	ms2-SchedTransmGrantHARQAlloc		BIT STRING (SIZE (8))				OPTIONAL,
	servingGrant						SEQUENCE {
		value								INTEGER (0..38),
		primary-Secondary-GrantSelector		ENUMERATED { primary, secondary }
	}		OPTIONAL
}

E-DPDCH-MaxChannelisationCodes ::=	ENUMERATED {
										sf64, sf32, sf16, sf8, sf4, sf4x2, sf2x2, sf4x2-and-sf2x2 }

E-HICH-ChannelisationCode ::=		INTEGER (0..127)

E-HICH-Information ::=				SEQUENCE {
	dl-ScramblingCode					SecondaryScramblingCode				OPTIONAL,
	channelisationCode					E-HICH-ChannelisationCode,
	signatureSequence					E-HICH-RGCH-SignatureSequence
}

E-HICH-RGCH-SignatureSequence ::=	INTEGER (0..39)

E-RGCH-CombinationIndex ::=			INTEGER (0..5)

E-RGCH-Information ::=				SEQUENCE {
	signatureSequence					E-HICH-RGCH-SignatureSequence,
	rg-CombinationIndex					E-RGCH-CombinationIndex
}

E-TFCI-TableIndex ::=				INTEGER (0..1)

FACH-PCH-Information ::=			SEQUENCE {
	transportFormatSet					TransportFormatSet,
	transportChannelIdentity			TransportChannelIdentity,
	ctch-Indicator						BOOLEAN
}

FACH-PCH-InformationList ::=		SEQUENCE (SIZE (1..maxFACHPCH)) OF
										FACH-PCH-Information

Feedback-cycle ::=					ENUMERATED {
										fc0, fc2, fc4, fc8, fc10, fc20, fc40, fc80, fc160}

FPACH-Info-r4 ::=						SEQUENCE {
	timeslot							TimeslotNumber-LCR-r4,
	channelisationCode					TDD-FPACH-CCode16-r4,
	midambleShiftAndBurstType			MidambleShiftAndBurstType-LCR-r4,
    wi                                  Wi-LCR
}

FrequencyInfo ::=					SEQUENCE {
	modeSpecificInfo					CHOICE {
		fdd									FrequencyInfoFDD,
		tdd									FrequencyInfoTDD	}
}

FrequencyInfoFDD ::=				SEQUENCE {
	uarfcn-UL							UARFCN				OPTIONAL,
	uarfcn-DL							UARFCN
}

FrequencyInfoTDD ::=				SEQUENCE {
	uarfcn-Nt							UARFCN
}

HappyBit-DelayCondition ::=			ENUMERATED { 
										ms2, ms10, ms20, ms50, ms100, ms200, ms500, ms1000 }

HARQ-Preamble-Mode ::=				INTEGER (0..1)

HS-ChannelisationCode-LCR ::=		ENUMERATED {
										cc16-1, cc16-2, cc16-3, cc16-4,
										cc16-5, cc16-6, cc16-7, cc16-8,
										cc16-9, cc16-10, cc16-11, cc16-12,
										cc16-13, cc16-14, cc16-15, cc16-16 }

HS-PDSCH-Midamble-Configuration-TDD128 ::=	SEQUENCE {
	midambleAllocationMode				CHOICE{
		defaultMidamble						NULL,
		commonMidamble						NULL,
		ueSpecificMidamble					INTEGER (0..15)
    },
	-- Actual value midambleConfiguration = IE value * 2
	midambleConfiguration				INTEGER (1..8)
}

HS-SCCH-Info ::=					SEQUENCE {
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			hS-SCCHChannelisationCodeInfo		SEQUENCE (SIZE (1..maxHSSCCHs)) OF
													HS-SCCH-Codes,
			dl-ScramblingCode					SecondaryScramblingCode		OPTIONAL
		},
		tdd									CHOICE {
			tdd384								SEQUENCE {
                nack-ack-power-offset      		   INTEGER (-7..8), 
                hs-SICH-PowerControl-Info  		   HS-SICH-Power-Control-Info-TDD384,
				hS-SCCH-SetConfiguration 		   SEQUENCE (SIZE (1..maxHSSCCHs)) OF
						HS-SCCH-TDD384
				},
			tdd128								SEQUENCE (SIZE (1..maxHSSCCHs)) OF
													HS-SCCH-TDD128
		}
	}
}

HS-SCCH-Info-r6 ::=					SEQUENCE {
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			hS-SCCHChannelisationCodeInfo		SEQUENCE (SIZE (1..maxHSSCCHs)) OF
													HS-SCCH-Codes,
			dl-ScramblingCode					SecondaryScramblingCode			OPTIONAL
		},
		tdd									CHOICE {
			tdd384								SEQUENCE {
				nack-ack-power-offset				INTEGER (-7..8), 
				hs-SICH-PowerControl-Info			HS-SICH-Power-Control-Info-TDD384,
				dhs-sync							DHS-Sync					OPTIONAL,
				hS-SCCH-SetConfiguration			SEQUENCE (SIZE (1..maxHSSCCHs)) OF
														HS-SCCH-TDD384
				},
			tdd128								SEQUENCE (SIZE (1..maxHSSCCHs)) OF
													HS-SCCH-TDD128
		}
	}
}

HS-SCCH-Codes ::=					INTEGER (0..127)

HS-SCCH-TDD128 ::=				SEQUENCE {
	timeslotNumber						TimeslotNumber-LCR-r4,
	firstChannelisationCode				HS-ChannelisationCode-LCR,
	secondChannelisationCode			HS-ChannelisationCode-LCR,
	midambleAllocationMode				CHOICE {
		defaultMidamble						NULL,
		commonMidamble						NULL,
		ueSpecificMidamble					INTEGER(0..15)
	},
	-- Actual value midambleConfiguration = IE value * 2
	midambleConfiguration				INTEGER (1..8),
	bler-target							Bler-Target,
	hs-sich-configuration				HS-SICH-Configuration-TDD128
}

HS-SICH-Configuration-TDD128 ::=	SEQUENCE {
	timeslotNumber						TimeslotNumber-LCR-r4,
	channelisationCode					HS-ChannelisationCode-LCR,
	midambleAllocationMode				CHOICE {
		defaultMidamble						NULL,
		ueSpecificMidamble					SEQUENCE {
			midambleShift						MidambleShiftLong
		}
	},
	-- Actual value midambleConfiguration = IE value * 2
	midambleConfiguration				INTEGER (1..8),
	nack-ack-power-offset				INTEGER (-7..8),
	power-level-HSSICH					INTEGER (-120..-58),
	tpc-step-size						ENUMERATED { s1, s2, s3 , spare1}
}



HS-SCCH-TDD384 ::=				SEQUENCE {
	timeslotNumber						TimeslotNumber,
	channelisationCode					DL-TS-ChannelisationCode,
	midambleAllocationMode				CHOICE {
		defaultMidamble						NULL,
		commonMidamble						NULL,
		ueSpecificMidamble					SEQUENCE {
			midambleShift						MidambleShiftLong
		}
	},
	midambleconfiguration				MidambleConfigurationBurstType1and3,
	bler-target							Bler-Target,
	hs-sich-configuration				HS-SICH-Configuration-TDD384
}

HS-SICH-Configuration-TDD384 ::=	SEQUENCE {
	timeslotNumber						TimeslotNumber,
	channelisationCode					DL-TS-ChannelisationCode,
	midambleAllocationMode				CHOICE {
		defaultMidamble						NULL,
		ueSpecificMidamble					SEQUENCE {
			midambleShift						MidambleShiftLong
		}
	},
	midambleconfiguration				MidambleConfigurationBurstType1and3
}

HS-SICH-Power-Control-Info-TDD384 ::= SEQUENCE {
	-- Actual value ul-target-SIR = IE value * 0.5
	ul-target-SIR						INTEGER (-22..40),
    hs-sich-ConstantValue			    ConstantValue
}


IndividualTimeslotInfo ::=			SEQUENCE {
	timeslotNumber						TimeslotNumber,
	tfci-Existence						BOOLEAN,
	midambleShiftAndBurstType			MidambleShiftAndBurstType
}

IndividualTimeslotInfo-LCR-r4 ::=	SEQUENCE {
	timeslotNumber						TimeslotNumber-LCR-r4,
	tfci-Existence						BOOLEAN,
	midambleShiftAndBurstType			MidambleShiftAndBurstType-LCR-r4,
	modulation							ENUMERATED { mod-QPSK, mod-8PSK },
	ss-TPC-Symbols						ENUMERATED { zero, one, sixteenOverSF },
	additionalSS-TPC-Symbols			INTEGER(1..15)		OPTIONAL
}

IndividualTimeslotInfo-LCR-r4-ext ::=		SEQUENCE {
-- timeslotNumber and tfci-Existence is taken from IndividualTimeslotInfo.
-- midambleShiftAndBurstType in IndividualTimeslotInfo shall be ignored.
	midambleShiftAndBurstType			MidambleShiftAndBurstType-LCR-r4,
	modulation							ENUMERATED { mod-QPSK, mod-8PSK },
	ss-TPC-Symbols						ENUMERATED { zero, one, sixteenOverSF }
}

IndividualTS-Interference ::=		SEQUENCE {
	timeslot							TimeslotNumber,
	ul-TimeslotInterference				TDD-UL-Interference
}

IndividualTS-InterferenceList ::=	SEQUENCE (SIZE (1..maxTS)) OF
										IndividualTS-Interference

ITP ::=								ENUMERATED {
										mode0, mode1 }

NidentifyAbort ::=	INTEGER (1..128)

MaxAllowedUL-TX-Power ::=			INTEGER (-50..33)

MaxAvailablePCPCH-Number ::=		INTEGER (1..64)
MaxPowerIncrease-r4 ::=				INTEGER (0..3)

MaxTFCI-Field2Value ::=				INTEGER (1..1023)

Measurement-Feedback-Info ::=		SEQUENCE {
	modeSpecificInfo				CHOICE {
		fdd								SEQUENCE {
			measurementPowerOffset			MeasurementPowerOffset,
			feedback-cycle					Feedback-cycle,
			cqi-RepetitionFactor			CQI-RepetitionFactor,
			deltaCQI						DeltaCQI
		},
		tdd								NULL
	}
}


MidambleConfigurationBurstType1and3 ::= ENUMERATED {ms4, ms8, ms16}

MidambleConfigurationBurstType2 ::=		ENUMERATED {ms3, ms6}

MidambleShiftAndBurstType ::=		SEQUENCE {
	burstType							CHOICE {	
		type1								SEQUENCE {
			midambleConfigurationBurstType1and3	MidambleConfigurationBurstType1and3,
			midambleAllocationMode				CHOICE {
				defaultMidamble						NULL,
				commonMidamble						NULL,
				ueSpecificMidamble					SEQUENCE {
					midambleShift						MidambleShiftLong
				}
			}
		},
		type2								SEQUENCE {
			midambleConfigurationBurstType2		MidambleConfigurationBurstType2,
			midambleAllocationMode				CHOICE {
				defaultMidamble						NULL,
				commonMidamble						NULL,
				ueSpecificMidamble					SEQUENCE {
					midambleShift						MidambleShiftShort
				}
			}
		},
		type3								SEQUENCE {
			midambleConfigurationBurstType1and3	MidambleConfigurationBurstType1and3,
			midambleAllocationMode				CHOICE {
				defaultMidamble						NULL,
				ueSpecificMidamble					SEQUENCE {
					midambleShift						MidambleShiftLong
				}
			}
		}
	}
}

MidambleShiftAndBurstType-DL ::=		SEQUENCE {
	burstType							CHOICE {	
		type1								SEQUENCE {
			midambleConfigurationBurstType1and3	MidambleConfigurationBurstType1and3,
			midambleAllocationMode				CHOICE {
				defaultMidamble						NULL,
				commonMidamble						NULL,
				ueSpecificMidamble					SEQUENCE {
					midambleShift						MidambleShiftLong
				}
			}
		},
		type2								SEQUENCE {
			midambleConfigurationBurstType2		MidambleConfigurationBurstType2,
			midambleAllocationMode				CHOICE {
				defaultMidamble						NULL,
				commonMidamble						NULL,
				ueSpecificMidamble					SEQUENCE {
					midambleShift						MidambleShiftShort
				}
			}
		}
	}
}

MidambleShiftAndBurstType-LCR-r4 ::=	SEQUENCE {
	midambleAllocationMode				CHOICE {
		defaultMidamble						NULL,
		commonMidamble						NULL,
		ueSpecificMidamble					SEQUENCE {
			midambleShift						INTEGER (0..15)
		}
	},
	-- Actual value midambleConfiguration = IE value * 2
	midambleConfiguration				INTEGER (1..8)
}

MidambleShiftLong ::=				INTEGER (0..15)


MidambleShiftShort ::=				INTEGER (0..5)

MinimumSpreadingFactor ::=			ENUMERATED {
										sf4, sf8, sf16, sf32,
										sf64, sf128, sf256 }

MultiCodeInfo ::=					INTEGER (1..16)


N-EOT ::=							INTEGER (0..7)

N-GAP ::=							ENUMERATED {
										f2, f4, f8 }

N-PCH ::=							INTEGER (1..8)

N-StartMessage ::=					INTEGER (1..8)

NB01 ::=							INTEGER (0..50)

NF-Max ::=							INTEGER (1..64)

NumberOfDPDCH ::=					INTEGER (1..maxDPDCH-UL)

NumberOfFBI-Bits ::=				INTEGER (1..2)

OpenLoopPowerControl-TDD ::=		SEQUENCE {
	primaryCCPCH-TX-Power				PrimaryCCPCH-TX-Power,
	-- alpha, prach-ConstantValue, dpch-ConstantValue and pusch-ConstantValue
	-- shall be ignored in 1.28Mcps TDD mode.
	alpha								Alpha						OPTIONAL,
	prach-ConstantValue					ConstantValueTdd,
	dpch-ConstantValue					ConstantValueTdd,
	pusch-ConstantValue					ConstantValueTdd			OPTIONAL
}

OpenLoopPowerControl-IPDL-TDD-r4 ::=	SEQUENCE {
	ipdl-alpha							Alpha,
	maxPowerIncrease					MaxPowerIncrease-r4
}

PagingIndicatorLength ::=			ENUMERATED {
										pi4, pi8, pi16 }

PC-Preamble ::=						INTEGER (0..7)

PCP-Length ::=						ENUMERATED {
										as0, as8 }

PCPCH-ChannelInfo ::=				SEQUENCE {
	pcpch-UL-ScramblingCode				INTEGER (0..79),
	pcpch-DL-ChannelisationCode			INTEGER (0..511),
	pcpch-DL-ScramblingCode				SecondaryScramblingCode				OPTIONAL,
	pcp-Length							PCP-Length,
	ucsm-Info							UCSM-Info							OPTIONAL
}

PCPCH-ChannelInfoList ::=			SEQUENCE (SIZE (1..maxPCPCHs)) OF
										PCPCH-ChannelInfo

PCPICH-UsageForChannelEst ::=		ENUMERATED {
										mayBeUsed,
										shallNotBeUsed }

PDSCH-CapacityAllocationInfo ::=	SEQUENCE {
	-- pdsch-PowerControlInfo is conditional on new-configuration branch below, if this
	-- selected the IE is OPTIONAL otherwise it should not be sent
	pdsch-PowerControlInfo				PDSCH-PowerControlInfo				OPTIONAL,
	pdsch-AllocationPeriodInfo			AllocationPeriodInfo,
	configuration						CHOICE {
		old-Configuration					SEQUENCE {
			tfcs-ID								TFCS-IdentityPlain					DEFAULT 1,
			pdsch-Identity						PDSCH-Identity
		},
		new-Configuration					SEQUENCE {
			pdsch-Info							PDSCH-Info,
			pdsch-Identity						PDSCH-Identity				OPTIONAL
		}
	}
}

PDSCH-CapacityAllocationInfo-r4 ::=	SEQUENCE {
	pdsch-AllocationPeriodInfo			AllocationPeriodInfo,
	configuration						CHOICE {
		old-Configuration					SEQUENCE {
			tfcs-ID								TFCS-IdentityPlain					DEFAULT 1,
			pdsch-Identity						PDSCH-Identity
		},
		new-Configuration					SEQUENCE {
			pdsch-Info							PDSCH-Info-r4,
			pdsch-Identity						PDSCH-Identity				OPTIONAL,
			pdsch-PowerControlInfo				PDSCH-PowerControlInfo		OPTIONAL
		}
	}
}

PDSCH-CodeInfo ::=					SEQUENCE {
	spreadingFactor						SF-PDSCH,
	codeNumber							CodeNumberDSCH,
	multiCodeInfo						MultiCodeInfo
}

PDSCH-CodeInfoList ::=				SEQUENCE (SIZE (1..maxTFCI-2-Combs)) OF
										PDSCH-CodeInfo

PDSCH-CodeMap ::=					SEQUENCE {
	spreadingFactor						SF-PDSCH,
	multiCodeInfo						MultiCodeInfo,
	codeNumberStart						CodeNumberDSCH,
	codeNumberStop						CodeNumberDSCH
}

PDSCH-CodeMapList ::=				SEQUENCE (SIZE (1..maxPDSCH-TFCIgroups)) OF
										PDSCH-CodeMap

PDSCH-CodeMapping ::=				SEQUENCE {
	dl-ScramblingCode					SecondaryScramblingCode				OPTIONAL,
	signallingMethod					CHOICE {
		codeRange							CodeRange,
		tfci-Range							DSCH-MappingList,
		explicit-config						PDSCH-CodeInfoList,
		replace								ReplacedPDSCH-CodeInfoList
	}
}	

PDSCH-Identity ::=					INTEGER (1..hiPDSCHidentities)

 
PDSCH-Info ::=						SEQUENCE {
	tfcs-ID								TFCS-IdentityPlain					DEFAULT 1,
	commonTimeslotInfo					CommonTimeslotInfo					OPTIONAL,
	pdsch-TimeslotsCodes				DownlinkTimeslotsCodes				OPTIONAL
}

PDSCH-Info-r4 ::=						SEQUENCE {
	tfcs-ID								TFCS-IdentityPlain					DEFAULT 1,
	commonTimeslotInfo					CommonTimeslotInfo					OPTIONAL,
	tddOption							CHOICE {
		tdd384								SEQUENCE {
			pdsch-TimeslotsCodes				DownlinkTimeslotsCodes		OPTIONAL
		},
		tdd128								SEQUENCE {
			pdsch-TimeslotsCodes				DownlinkTimeslotsCodes-LCR-r4	OPTIONAL
		}
	}
}

PDSCH-Info-LCR-r4 ::=				SEQUENCE {
	tfcs-ID								TFCS-IdentityPlain					DEFAULT 1,
	commonTimeslotInfo					CommonTimeslotInfo					OPTIONAL,
	pdsch-TimeslotsCodes				DownlinkTimeslotsCodes-LCR-r4		OPTIONAL
}

PDSCH-PowerControlInfo ::=			SEQUENCE {
	tpc-StepSizeTDD						TPC-StepSizeTDD						OPTIONAL,
	ul-CCTrChTPCList					UL-CCTrChTPCList					OPTIONAL
}

PDSCH-SHO-DCH-Info ::=				SEQUENCE {
	dsch-RadioLinkIdentifier			DSCH-RadioLinkIdentifier,
	rl-IdentifierList					RL-IdentifierList					OPTIONAL
}

PDSCH-SysInfo ::=					SEQUENCE {
	pdsch-Identity						PDSCH-Identity,
	pdsch-Info							PDSCH-Info,
	dsch-TFS							TransportFormatSet					OPTIONAL,
	dsch-TFCS							TFCS								OPTIONAL
}

PDSCH-SysInfo-HCR-r5 ::=					SEQUENCE {
	pdsch-Identity						PDSCH-Identity,
	pdsch-Info							PDSCH-Info,
	dsch-TransportChannelsInfo			DSCH-TransportChannelsInfo			OPTIONAL,
	dsch-TFCS							TFCS								OPTIONAL
}

PDSCH-SysInfo-LCR-r4 ::=			SEQUENCE {
	pdsch-Identity						PDSCH-Identity,
	pdsch-Info							PDSCH-Info-LCR-r4,
	dsch-TFS							TransportFormatSet					OPTIONAL,
	dsch-TFCS							TFCS								OPTIONAL
}

PDSCH-SysInfoList ::=				SEQUENCE (SIZE (1..maxPDSCH)) OF
										PDSCH-SysInfo

PDSCH-SysInfoList-HCR-r5 ::=			SEQUENCE (SIZE (1..maxPDSCH)) OF PDSCH-SysInfo-HCR-r5

PDSCH-SysInfoList-LCR-r4 ::=		SEQUENCE (SIZE (1..maxPDSCH)) OF
										PDSCH-SysInfo-LCR-r4

PDSCH-SysInfoList-SFN ::=			SEQUENCE (SIZE (1..maxPDSCH)) OF
										SEQUENCE {
	pdsch-SysInfo							PDSCH-SysInfo,
	sfn-TimeInfo							SFN-TimeInfo					OPTIONAL
}

PDSCH-SysInfoList-SFN-HCR-r5 ::=			SEQUENCE (SIZE (1..maxPDSCH)) OF
										SEQUENCE {
	pdsch-SysInfo							PDSCH-SysInfo-HCR-r5,
	sfn-TimeInfo							SFN-TimeInfo					OPTIONAL
}

PDSCH-SysInfoList-SFN-LCR-r4 ::=	SEQUENCE (SIZE (1..maxPDSCH)) OF
										SEQUENCE {
	pdsch-SysInfo							PDSCH-SysInfo-LCR-r4,
	sfn-TimeInfo							SFN-TimeInfo					OPTIONAL
}

PersistenceScalingFactor ::=		ENUMERATED {
										psf0-9, psf0-8, psf0-7, psf0-6,
										psf0-5, psf0-4, psf0-3, psf0-2 }

PersistenceScalingFactorList ::=	SEQUENCE (SIZE (1..maxASCpersist)) OF
										PersistenceScalingFactor

PI-CountPerFrame ::=				ENUMERATED {
										e18, e36, e72, e144 }

PichChannelisationCodeList-LCR-r4 ::=	SEQUENCE (SIZE (1..2)) OF
											DL-TS-ChannelisationCode

PICH-Info ::=						CHOICE {
	fdd									SEQUENCE {
		channelisationCode256				ChannelisationCode256,
		pi-CountPerFrame					PI-CountPerFrame,
		sttd-Indicator						BOOLEAN
	},
	tdd									SEQUENCE {
		channelisationCode					TDD-PICH-CCode					OPTIONAL,
		timeslot							TimeslotNumber					OPTIONAL,
		midambleShiftAndBurstType			MidambleShiftAndBurstType,
		repetitionPeriodLengthOffset		RepPerLengthOffset-PICH			OPTIONAL,
		pagingIndicatorLength				PagingIndicatorLength			DEFAULT pi4,
		n-GAP								N-GAP							DEFAULT f4,
		n-PCH								N-PCH							DEFAULT 2
	}	
}

PICH-Info-LCR-r4 ::=				SEQUENCE {
	timeslot							TimeslotNumber-LCR-r4				OPTIONAL,
	pichChannelisationCodeList-LCR-r4	PichChannelisationCodeList-LCR-r4,
	midambleShiftAndBurstType			MidambleShiftAndBurstType-LCR-r4,
	repetitionPeriodLengthOffset		RepPerLengthOffset-PICH				OPTIONAL,
	pagingIndicatorLength				PagingIndicatorLength			DEFAULT pi4,
	n-GAP								N-GAP							DEFAULT f4,
	n-PCH								N-PCH							DEFAULT 2
}

PICH-PowerOffset ::=				INTEGER (-10..5)

PilotBits128 ::=					ENUMERATED {
										pb4, pb8 }

PilotBits256 ::=					ENUMERATED {
										pb2, pb4, pb8 }

	-- Actual measurement power offset value = IE value * 0.5
MeasurementPowerOffset ::=			INTEGER (-12..26)

PositionFixedOrFlexible ::=			ENUMERATED {
										fixed,
										flexible }

PowerControlAlgorithm ::=			CHOICE {
	algorithm1							TPC-StepSizeFDD,
	algorithm2							NULL
}

PowerOffsetPilot-pdpdch ::=			INTEGER (0..24)

PowerOffsetTPC-pdpdch ::=			INTEGER (0..24)

PowerRampStep ::=					INTEGER (1..8)

PRACH-ChanCodes-LCR-r4 ::=			SEQUENCE (SIZE (1..4)) OF
										TDD-PRACH-CCode-LCR-r4

PRACH-Definition-LCR-r4 ::=			SEQUENCE {
	timeslot							TimeslotNumber-PRACH-LCR-r4,
	prach-ChanCodes-LCR					PRACH-ChanCodes-LCR-r4,
	midambleShiftAndBurstType			MidambleShiftAndBurstType-LCR-r4,
	fpach-Info							FPACH-Info-r4
}

PRACH-Midamble ::=					ENUMERATED {
										direct,
										direct-Inverted }

PRACH-Partitioning ::=				CHOICE {
	fdd									SEQUENCE (SIZE (1..maxASC)) OF
	-- TABULAR: If only "NumASC+1" (with, NumASC+1 < maxASC) ASCSetting-FDD are listed, 
	-- the remaining (NumASC+2 through maxASC) ASCs are unspecified.
											ASCSetting-FDD,
	tdd									SEQUENCE (SIZE (1..maxASC)) OF
	-- TABULAR: If only "NumASC+1" (with, NumASC+1 < maxASC) ASCSetting-TDD are listed, 
	-- the remaining (NumASC+2 through maxASC) ASCs are unspecified.
											ASCSetting-TDD
}	

PRACH-Partitioning-LCR-r4 ::=		SEQUENCE (SIZE (1..maxASC)) OF
	-- TABULAR: If only "NumASC+1" (with, NumASC+1 < maxASC) ASCSetting-TDD-LCR-r4 are listed, 
	-- the remaining (NumASC+2 through maxASC) ASCs are unspecified.
											ASCSetting-TDD-LCR-r4

PRACH-PowerOffset ::=				SEQUENCE {
	powerRampStep						PowerRampStep,
	preambleRetransMax					PreambleRetransMax
}

PRACH-RACH-Info ::=					SEQUENCE {
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			availableSignatures					AvailableSignatures,
			availableSF							SF-PRACH,
			preambleScramblingCodeWordNumber	PreambleScramblingCodeWordNumber,
			puncturingLimit						PuncturingLimit,
			availableSubChannelNumbers			AvailableSubChannelNumbers
		},
		tdd									SEQUENCE {
			timeslot							TimeslotNumber,
			channelisationCodeList				TDD-PRACH-CCodeList,
			prach-Midamble						PRACH-Midamble
		}
	}
}

PRACH-RACH-Info-LCR-r4 ::=			SEQUENCE {
	sync-UL-Info						SYNC-UL-Info-r4,
	prach-DefinitionList				SEQUENCE (SIZE (1..maxPRACH-FPACH)) OF
											PRACH-Definition-LCR-r4
}

PRACH-SystemInformation ::=			SEQUENCE {
	prach-RACH-Info						PRACH-RACH-Info,
	transportChannelIdentity			TransportChannelIdentity,
	rach-TransportFormatSet				TransportFormatSet					OPTIONAL,
	rach-TFCS							TFCS								OPTIONAL,
	prach-Partitioning					PRACH-Partitioning					OPTIONAL,
	persistenceScalingFactorList		PersistenceScalingFactorList		OPTIONAL,
	ac-To-ASC-MappingTable				AC-To-ASC-MappingTable				OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			primaryCPICH-TX-Power				PrimaryCPICH-TX-Power		OPTIONAL,
			constantValue						ConstantValue				OPTIONAL,
			prach-PowerOffset					PRACH-PowerOffset			OPTIONAL,
			rach-TransmissionParameters			RACH-TransmissionParameters	OPTIONAL,
			aich-Info							AICH-Info					OPTIONAL
		},
		tdd									NULL
	}	
}

PRACH-SystemInformation-LCR-r4 ::=	SEQUENCE {
	prach-RACH-Info-LCR					PRACH-RACH-Info-LCR-r4,
	rach-TransportFormatSet-LCR			TransportFormatSet-LCR			OPTIONAL,
	prach-Partitioning-LCR				PRACH-Partitioning-LCR-r4		OPTIONAL
}

PRACH-SystemInformationList ::=		SEQUENCE (SIZE (1..maxPRACH)) OF
										PRACH-SystemInformation

PRACH-SystemInformationList-LCR-r4 ::=	SEQUENCE (SIZE (1..maxPRACH)) OF
											PRACH-SystemInformation-LCR-r4

PreambleRetransMax ::=				INTEGER (1..64)

PreambleScramblingCodeWordNumber ::=	INTEGER (0..15)

PreDefPhyChConfiguration ::=		SEQUENCE {
	ul-DPCH-InfoPredef					UL-DPCH-InfoPredef,
	dl-CommonInformationPredef			DL-CommonInformationPredef	OPTIONAL
}

PrimaryCCPCH-Info ::=				CHOICE {
	fdd									SEQUENCE {
		tx-DiversityIndicator				BOOLEAN
	},
	tdd									SEQUENCE {
		-- syncCase should be ignored for 1.28Mcps TDD mode
		syncCase 							CHOICE {
			syncCase1							SEQUENCE {
				timeslot							TimeslotNumber					
			},
			syncCase2							SEQUENCE {
				timeslotSync2						TimeslotSync2
			}
		}																	OPTIONAL,
		cellParametersID					CellParametersID				OPTIONAL,
		sctd-Indicator						BOOLEAN
	}
}

PrimaryCCPCH-Info-r4 ::=			CHOICE {
	fdd									SEQUENCE {
		tx-DiversityIndicator				BOOLEAN
	},
	tdd									SEQUENCE {
		tddOption							CHOICE {
			tdd384								SEQUENCE {
				syncCase 							CHOICE {
					syncCase1							SEQUENCE {
						timeslot							TimeslotNumber
					},
					syncCase2							SEQUENCE {
						timeslotSync2						TimeslotSync2
					}
				}															OPTIONAL
			},
			tdd128								SEQUENCE {
				tstd-Indicator						BOOLEAN
			}
		},
		cellParametersID					CellParametersID				OPTIONAL,
		sctd-Indicator						BOOLEAN
	}
}

PrimaryCCPCH-Info-LCR-r4 ::=		SEQUENCE {
	tstd-Indicator						BOOLEAN,
	cellParametersID					CellParametersID				OPTIONAL,
	sctd-Indicator						BOOLEAN
}

-- For 1.28Mcps TDD, the following IE includes elements for the PCCPCH Info additional to those
-- in PrimaryCCPCH-Info
PrimaryCCPCH-Info-LCR-r4-ext ::=	SEQUENCE {
	tstd-Indicator						BOOLEAN
}

PrimaryCCPCH-InfoPost ::=			SEQUENCE {
	syncCase 							CHOICE {
		syncCase1							SEQUENCE {
			timeslot							TimeslotNumber					
		},
		syncCase2							SEQUENCE {
			timeslotSync2						TimeslotSync2
		}
	},
	cellParametersID					CellParametersID,
	sctd-Indicator						BOOLEAN
}

PrimaryCCPCH-InfoPostTDD-LCR-r4 ::=	SEQUENCE {
	tstd-Indicator						BOOLEAN,
	cellParametersID					CellParametersID,
	sctd-Indicator						BOOLEAN
}

PrimaryCCPCH-TX-Power ::=			INTEGER (6..43)

PrimaryCPICH-Info ::=				SEQUENCE {
	primaryScramblingCode				PrimaryScramblingCode
}

PrimaryCPICH-TX-Power ::=			INTEGER (-10..50)

PrimaryScramblingCode ::=			INTEGER (0..511)

PuncturingLimit ::=					ENUMERATED {
										pl0-40, pl0-44, pl0-48, pl0-52, pl0-56,
										pl0-60, pl0-64, pl0-68, pl0-72, pl0-76,
										pl0-80, pl0-84, pl0-88, pl0-92, pl0-96, pl1 }

PUSCH-CapacityAllocationInfo ::=	SEQUENCE {
	pusch-Allocation					CHOICE {
		pusch-AllocationPending				NULL,
		pusch-AllocationAssignment			SEQUENCE {
			pusch-AllocationPeriodInfo			AllocationPeriodInfo,
			pusch-PowerControlInfo				UL-TargetSIR				OPTIONAL,
			configuration						CHOICE {
				old-Configuration					SEQUENCE {
					tfcs-ID								TFCS-IdentityPlain			DEFAULT 1,
					pusch-Identity						PUSCH-Identity
				},
				new-Configuration					SEQUENCE {
					pusch-Info							PUSCH-Info,
					pusch-Identity						PUSCH-Identity		OPTIONAL
				}
			}
		}
	}
}

PUSCH-CapacityAllocationInfo-r4 ::=	SEQUENCE {
	pusch-Allocation					CHOICE {
		pusch-AllocationPending				NULL,
		pusch-AllocationAssignment			SEQUENCE {
			pusch-AllocationPeriodInfo			AllocationPeriodInfo,
			pusch-PowerControlInfo				PUSCH-PowerControlInfo-r4	OPTIONAL,
			configuration						CHOICE {
				old-Configuration					SEQUENCE {
					tfcs-ID								TFCS-IdentityPlain			DEFAULT 1,
					pusch-Identity						PUSCH-Identity
				},
				new-Configuration					SEQUENCE {
					pusch-Info							PUSCH-Info-r4,
					pusch-Identity						PUSCH-Identity		OPTIONAL
				}
			}
		}
	}
}

PUSCH-Identity ::=					INTEGER (1..hiPUSCHidentities)

PUSCH-Info ::=						SEQUENCE {
	tfcs-ID								TFCS-IdentityPlain					DEFAULT 1,
	commonTimeslotInfo					CommonTimeslotInfo					OPTIONAL,
	pusch-TimeslotsCodes				UplinkTimeslotsCodes				OPTIONAL
}

PUSCH-Info-r4 ::=					SEQUENCE {
	tfcs-ID								TFCS-IdentityPlain					DEFAULT 1,
	commonTimeslotInfo					CommonTimeslotInfo					OPTIONAL,
	tddOption							CHOICE {
		tdd384								SEQUENCE {
			pusch-TimeslotsCodes				UplinkTimeslotsCodes		OPTIONAL
		},
		tdd128								SEQUENCE {
			pusch-TimeslotsCodes				UplinkTimeslotsCodes-LCR-r4	OPTIONAL
		}
	}
}

PUSCH-Info-LCR-r4 ::=				SEQUENCE {
	tfcs-ID								TFCS-IdentityPlain					DEFAULT 1,

	commonTimeslotInfo					CommonTimeslotInfo					OPTIONAL,
	pusch-TimeslotsCodes				UplinkTimeslotsCodes-LCR-r4			OPTIONAL
}

PUSCH-PowerControlInfo-r4 ::=		SEQUENCE {
	-- The IE ul-TargetSIR corresponds to PRX-PUSCHdes for 1.28Mcps TDD
	-- Actual value PRX-PUSCHdes = (value of IE "ul-TargetSIR"  120)
	ul-TargetSIR						UL-TargetSIR,
	tddOption							CHOICE {
		tdd384								NULL,
		tdd128								SEQUENCE {
			tpc-StepSize						TPC-StepSizeTDD				OPTIONAL
		}
	}
}

PUSCH-SysInfo ::=					SEQUENCE {
	pusch-Identity						PUSCH-Identity,
	pusch-Info							PUSCH-Info,
	usch-TFS							TransportFormatSet					OPTIONAL,
	usch-TFCS							TFCS								OPTIONAL
}

PUSCH-SysInfo-HCR-r5 ::=					SEQUENCE {
	pusch-Identity						PUSCH-Identity,
	pusch-Info							PUSCH-Info,
	usch-TransportChannelsInfo			USCH-TransportChannelsInfo			OPTIONAL,
	usch-TFCS							TFCS								OPTIONAL
}

PUSCH-SysInfo-LCR-r4 ::=			SEQUENCE {
	pusch-Identity						PUSCH-Identity,
	pusch-Info							PUSCH-Info-LCR-r4,
	usch-TFS							TransportFormatSet					OPTIONAL,
	usch-TFCS							TFCS								OPTIONAL
}

PUSCH-SysInfoList ::=				SEQUENCE (SIZE (1..maxPUSCH)) OF
										PUSCH-SysInfo

PUSCH-SysInfoList-HCR-r5 ::=			SEQUENCE (SIZE (1..maxPUSCH)) OF PUSCH-SysInfo-HCR-r5

PUSCH-SysInfoList-LCR-r4 ::=		SEQUENCE (SIZE (1..maxPUSCH)) OF
										PUSCH-SysInfo-LCR-r4

PUSCH-SysInfoList-SFN ::=			SEQUENCE (SIZE (1..maxPUSCH)) OF
										SEQUENCE {
	pusch-SysInfo							PUSCH-SysInfo,
	sfn-TimeInfo							SFN-TimeInfo					OPTIONAL
}

PUSCH-SysInfoList-SFN-HCR-r5 ::=			SEQUENCE (SIZE (1..maxPUSCH)) OF
										SEQUENCE {
	pusch-SysInfo							PUSCH-SysInfo-HCR-r5,
	sfn-TimeInfo							SFN-TimeInfo					OPTIONAL
}

PUSCH-SysInfoList-SFN-LCR-r4 ::=		SEQUENCE (SIZE (1..maxPUSCH)) OF
										SEQUENCE {
	pusch-SysInfo							PUSCH-SysInfo-LCR-r4,
	sfn-TimeInfo							SFN-TimeInfo					OPTIONAL
}

RACH-TransmissionParameters ::=		SEQUENCE {
	mmax								INTEGER (1..32),
	nb01Min								NB01,
	nb01Max								NB01
}

ReducedScramblingCodeNumber ::=		INTEGER (0..8191)

RepetitionPeriodAndLength ::=		CHOICE {
	repetitionPeriod1					NULL,
	-- repetitionPeriod2 could just as well be NULL also.
	repetitionPeriod2					INTEGER (1..1),
	repetitionPeriod4					INTEGER (1..3),
	repetitionPeriod8					INTEGER (1..7),
	repetitionPeriod16					INTEGER (1..15),
	repetitionPeriod32					INTEGER (1..31),
	repetitionPeriod64					INTEGER (1..63)
}

RepetitionPeriodLengthAndOffset ::= CHOICE {
	repetitionPeriod1					NULL,
	repetitionPeriod2					SEQUENCE {
		length								NULL,
		offset								INTEGER (0..1)
	},
	repetitionPeriod4					SEQUENCE {
		length								INTEGER (1..3),
		offset								INTEGER (0..3)
	},
	repetitionPeriod8					SEQUENCE {
		length								INTEGER (1..7),
		offset								INTEGER (0..7)
	},
	repetitionPeriod16					SEQUENCE {
		length								INTEGER (1..15),
		offset								INTEGER (0..15)
	},
	repetitionPeriod32					SEQUENCE {
		length								INTEGER (1..31),
		offset								INTEGER (0..31)
	},
	repetitionPeriod64					SEQUENCE {
		length								INTEGER (1..63),
		offset								INTEGER (0..63)
	}
}

ReplacedPDSCH-CodeInfo ::=			SEQUENCE {
	tfci-Field2							MaxTFCI-Field2Value,
	spreadingFactor						SF-PDSCH,
	codeNumber							CodeNumberDSCH,
	multiCodeInfo						MultiCodeInfo
}

ReplacedPDSCH-CodeInfoList ::=		SEQUENCE (SIZE (1..maxTFCI-2-Combs)) OF
										ReplacedPDSCH-CodeInfo

RepPerLengthOffset-PICH ::=			CHOICE {
	rpp4-2								INTEGER (0..3), 
	rpp8-2								INTEGER (0..7), 
	rpp8-4								INTEGER (0..7),
	rpp16-2								INTEGER (0..15), 
	rpp16-4								INTEGER (0..15), 
	rpp32-2								INTEGER (0..31), 
	rpp32-4								INTEGER (0..31), 
	rpp64-2								INTEGER (0..63), 
	rpp64-4								INTEGER (0..63)
}

RepPerLengthOffset-MICH ::=			CHOICE {
	rpp4-2								INTEGER (0..3),
	rpp8-2								INTEGER (0..7),
	rpp8-4								INTEGER (0..7),
	rpp16-2								INTEGER (0..15),
	rpp16-4								INTEGER (0..15),
	rpp32-2								INTEGER (0..31),
	rpp32-4								INTEGER (0..31),
	rpp64-2								INTEGER (0..63),
	rpp64-4								INTEGER (0..63)
}

RestrictedTrCH ::=					SEQUENCE {
	dl-restrictedTrCh-Type				DL-TrCH-Type,
	restrictedDL-TrCH-Identity			TransportChannelIdentity,
	allowedTFIList						AllowedTFI-List
}

RestrictedTrCH-InfoList ::=			SEQUENCE (SIZE(1..maxTrCH)) OF
										RestrictedTrCH

RL-AdditionInformation ::=			SEQUENCE {
	primaryCPICH-Info					PrimaryCPICH-Info,
	dl-DPCH-InfoPerRL					DL-DPCH-InfoPerRL,
	-- dummy and dummy2 are not used in this version of specification
	-- and the IEs should be ignored.
	dummy								BOOLEAN,
	dummy2								SCCPCH-InfoForFACH					OPTIONAL
}

RL-AdditionInformation-r6 ::=		SEQUENCE {
	primaryCPICH-Info					PrimaryCPICH-Info,
	cell-Id								CellIdentity						OPTIONAL,
	dl-dpchInfo							CHOICE {
		dl-DPCH-InfoPerRL					DL-DPCH-InfoPerRL-r5,
		dl-FDPCH-InfoPerRL					DL-FDPCH-InfoPerRL-r6
	},
	e-HICH-Information					E-HICH-Information					OPTIONAL,
	e-RGCH-Information					E-RGCH-Information					OPTIONAL
}

RL-AdditionInformationList ::=		SEQUENCE (SIZE (1..maxRL-1)) OF
										RL-AdditionInformation

RL-AdditionInformationList-r6 ::=	SEQUENCE (SIZE (1..maxRL-1)) OF
										RL-AdditionInformation-r6

RL-IdentifierList ::=				SEQUENCE (SIZE (1..maxRL)) OF
										PrimaryCPICH-Info

RL-RemovalInformationList ::=		SEQUENCE (SIZE (1..maxRL)) OF
										PrimaryCPICH-Info

RPP ::=								ENUMERATED {
										mode0, mode1 }

S-Field ::=							ENUMERATED {
										e1bit, e2bits }

SCCPCH-ChannelisationCode ::=		ENUMERATED {
										cc16-1, cc16-2, cc16-3, cc16-4,
										cc16-5, cc16-6, cc16-7, cc16-8,
										cc16-9, cc16-10, cc16-11, cc16-12,
										cc16-13, cc16-14, cc16-15, cc16-16 }

SCCPCH-ChannelisationCodeList ::=	SEQUENCE (SIZE (1..16)) OF
										SCCPCH-ChannelisationCode

SCCPCH-InfoForFACH ::=				SEQUENCE {
	secondaryCCPCH-Info					SecondaryCCPCH-Info,
	tfcs								TFCS,
	modeSpecificInfo				CHOICE {
		fdd								SEQUENCE {
			fach-PCH-InformationList			FACH-PCH-InformationList,
			sib-ReferenceListFACH				SIB-ReferenceListFACH
		},
		tdd								SEQUENCE {
			fach-PCH-InformationList			FACH-PCH-InformationList
		}
	}
}

SCCPCH-InfoForFACH-r4 ::=				SEQUENCE {
	secondaryCCPCH-Info					SecondaryCCPCH-Info-r4,
	tfcs								TFCS,
	fach-PCH-InformationList			FACH-PCH-InformationList,
	modeSpecificInfo				CHOICE {
		fdd								SEQUENCE {
			sib-ReferenceListFACH			SIB-ReferenceListFACH
		},
		tdd								NULL
	}
}

SCCPCH-SystemInformation ::=		SEQUENCE {
	secondaryCCPCH-Info					SecondaryCCPCH-Info,
	tfcs								TFCS								OPTIONAL,
	fach-PCH-InformationList			FACH-PCH-InformationList			OPTIONAL,
	pich-Info							PICH-Info							OPTIONAL
}

SCCPCH-SystemInformation-LCR-r4-ext ::=	SEQUENCE {
	secondaryCCPCH-LCR-Extensions	SecondaryCCPCH-Info-LCR-r4-ext,
	-- pich-Info in the SCCPCH-SystemInformation IE shall be absent,
	-- and instead the following used.
	pich-Info						PICH-Info-LCR-r4						OPTIONAL
}

SCCPCH-SystemInformationList ::=	SEQUENCE (SIZE (1..maxSCCPCH)) OF
										SCCPCH-SystemInformation

-- SCCPCH-SystemInformationList-LCR-r4-ext includes elements additional to those in
-- SCCPCH-SystemInformationList for the 1.28Mcps TDD. The order of the IEs
-- indicates which SCCPCH-SystemInformation-LCR-r4-ext IE extends which
-- SCCPCH-SystemInformation IE.
SCCPCH-SystemInformationList-LCR-r4-ext ::=	SEQUENCE (SIZE (1..maxSCCPCH)) OF
												SCCPCH-SystemInformation-LCR-r4-ext

-- The SCCPCH-SystemInformation-MBMS-r6 is used for an S-CCPCH dedicated for MBMS purposes.
SCCPCH-SystemInformation-MBMS-r6 ::= SEQUENCE {
	secondaryCCPCHInfo-MBMS				SecondaryCCPCHInfo-MBMS-r6,
	transportFormatCombinationSet		TFCS,
	fachCarryingMCCH					SEQUENCE {
		mcch-transportFormatSet				TransportFormatSet,
		mcch-ConfigurationInfo				MBMS-MCCH-ConfigurationInfo-r6
	},
	fachCarryingMTCH-List				MBMS-FACHCarryingMTCH-List			OPTIONAL,
	-- If schedulingInformation is provided
	fachCarryingMSCH					SEQUENCE {
		msch-transportFormatSet				TransportFormatSet,
		msch-ConfigurationInfo				MBMS-MSCH-ConfigurationInfo-r6
	}		OPTIONAL
}

ScramblingCodeChange ::=			ENUMERATED {
										codeChange, noCodeChange }

ScramblingCodeType ::=				ENUMERATED {
										shortSC,
										longSC }

SecondaryCCPCH-Info ::=				SEQUENCE {
	modeSpecificInfo				CHOICE {
		fdd								SEQUENCE {
			-- dummy1 is not used in this version of the specification and should be ignored.
			dummy1							PCPICH-UsageForChannelEst,
			-- dummy2 is not used in this version of the specification.  It should not
			-- be sent and if received it should be ignored.
			dummy2							SecondaryCPICH-Info				OPTIONAL,
			secondaryScramblingCode			SecondaryScramblingCode			OPTIONAL,
			sttd-Indicator					BOOLEAN,
			sf-AndCodeNumber				SF256-AndCodeNumber,
			pilotSymbolExistence			BOOLEAN,
			tfci-Existence					BOOLEAN,
			positionFixedOrFlexible			PositionFixedOrFlexible,
			timingOffset					TimingOffset					DEFAULT 0
		},
		tdd 							SEQUENCE {
			-- TABULAR: the offset is included in CommonTimeslotInfoSCCPCH
			commonTimeslotInfo				CommonTimeslotInfoSCCPCH,
			individualTimeslotInfo			IndividualTimeslotInfo,
			channelisationCode				SCCPCH-ChannelisationCodeList
		}
	}
}

SecondaryCCPCH-Info-r4 ::=		SEQUENCE {
	modeSpecificInfo				CHOICE {
		fdd								SEQUENCE {
			secondaryScramblingCode			SecondaryScramblingCode			OPTIONAL,
			sttd-Indicator					BOOLEAN,
			sf-AndCodeNumber				SF256-AndCodeNumber,
			pilotSymbolExistence			BOOLEAN,
			tfci-Existence					BOOLEAN,
			positionFixedOrFlexible			PositionFixedOrFlexible,
			timingOffset					TimingOffset					DEFAULT 0
		},
		tdd 							SEQUENCE {
			-- TABULAR: the offset is included in CommonTimeslotInfoSCCPCH
			commonTimeslotInfo				CommonTimeslotInfoSCCPCH,
			tddOption						CHOICE {
				tdd384							SEQUENCE {
					individualTimeslotInfo			IndividualTimeslotInfo
				},
				tdd128							SEQUENCE {
					individualTimeslotInfo			IndividualTimeslotInfo-LCR-r4
				}
			},
			channelisationCode				SCCPCH-ChannelisationCodeList
		}
	}
}

SecondaryCCPCH-Info-LCR-r4-ext ::=	SEQUENCE {
	individualTimeslotLCR-Ext			IndividualTimeslotInfo-LCR-r4-ext
}

SecondaryCCPCHInfo-MBMS-r6 ::=		SEQUENCE {
	modeSpecificInfo				CHOICE {
		fdd								SEQUENCE {
			secondaryScramblingCode			SecondaryScramblingCode			OPTIONAL,
			sttd-Indicator					BOOLEAN,
			sf-AndCodeNumber				SF256-AndCodeNumber,
			timingOffset					TimingOffset					DEFAULT 0
		},
		tdd384							DownlinkTimeslotsCodes,
		tdd128							DownlinkTimeslotsCodes-LCR-r4
	}
}

SecondaryCPICH-Info ::=				SEQUENCE {
	secondaryDL-ScramblingCode			SecondaryScramblingCode				OPTIONAL,
	channelisationCode					ChannelisationCode256
}

SecondaryScramblingCode ::=			INTEGER (1..15)

SecondInterleavingMode ::=			ENUMERATED {
										frameRelated, timeslotRelated }

-- SF256-AndCodeNumber encodes both "Spreading factor" and "Code Number"
SF256-AndCodeNumber ::=				CHOICE {
	sf4									INTEGER (0..3),
	sf8									INTEGER (0..7),
	sf16								INTEGER (0..15),
	sf32								INTEGER (0..31),
	sf64								INTEGER (0..63),
	sf128								INTEGER (0..127),
	sf256								INTEGER (0..255)
}

-- SF512-AndCodeNumber encodes both "Spreading factor" and "Code Number"
SF512-AndCodeNumber ::=				CHOICE {
	sf4									INTEGER (0..3),
	sf8									INTEGER (0..7),
	sf16								INTEGER (0..15),
	sf32								INTEGER (0..31),
	sf64								INTEGER (0..63),
	sf128								INTEGER (0..127),
	sf256								INTEGER (0..255),
	sf512								INTEGER (0..511)
}

-- SF512-AndPilot encodes both "Spreading factor" and "Number of bits for Pilot bits"
SF512-AndPilot ::=					CHOICE {
	sfd4								NULL, 
	sfd8								NULL, 
	sfd16								NULL, 
	sfd32								NULL,
	sfd64								NULL, 
	sfd128								PilotBits128, 
	sfd256								PilotBits256, 
	sfd512								NULL
}
SF-PDSCH ::=						ENUMERATED {
										sfp4, sfp8, sfp16, sfp32,
										sfp64, sfp128, sfp256 }

SF-PRACH ::=						ENUMERATED {
										sfpr32, sfpr64, sfpr128, sfpr256 }

SFN-TimeInfo ::=					SEQUENCE {
	activationTimeSFN					INTEGER (0..4095),
	physChDuration					DurationTimeInfo
}

-- actual scheduling value = 2(signalled value +1) and is the periodicity of sending special burst frames
SpecialBurstScheduling ::=				INTEGER (0..7)

SpreadingFactor ::=					ENUMERATED {
										sf4, sf8, sf16, sf32,
										sf64, sf128, sf256 }

SRB-delay ::=						INTEGER (0..7)

SSDT-CellIdentity ::=				ENUMERATED {
										ssdt-id-a, ssdt-id-b, ssdt-id-c,
										ssdt-id-d, ssdt-id-e, ssdt-id-f,
										ssdt-id-g, ssdt-id-h }

SSDT-Information ::=				SEQUENCE {
	s-Field								S-Field,
	codeWordSet							CodeWordSet
}

SSDT-Information-r4 ::=				SEQUENCE {
	s-Field								S-Field,
	codeWordSet							CodeWordSet,
	ssdt-UL-r4							SSDT-UL									OPTIONAL
}

SSDT-UL ::=							ENUMERATED {
										ul, ul-AndDL }

SynchronisationParameters-r4 ::=	SEQUENCE {
	sync-UL-CodesBitmap					BIT STRING {
											code7(0),
											code6(1),
											code5(2),
											code4(3),
											code3(4),
											code2(5),
											code1(6),
											code0(7)
											} (SIZE (8)),
	fpach-Info							FPACH-Info-r4,
	-- Actual value prxUpPCHdes = IE value - 120
	prxUpPCHdes							INTEGER (0..62),
	sync-UL-Procedure					SYNC-UL-Procedure-r4					OPTIONAL
}

SYNC-UL-Procedure-r4 ::=			SEQUENCE {
	max-SYNC-UL-Transmissions			ENUMERATED { tr1, tr2, tr4, tr8 },
	powerRampStep						INTEGER (0..3)
}

SYNC-UL-Info-r4 ::=					SEQUENCE {
	sync-UL-Codes-Bitmap				BIT STRING {
											code7(0),
											code6(1),
											code5(2),
											code4(3),
											code3(4),
											code2(5),
											code1(6),
											code0(7)
											} ( SIZE (8)),
	-- Actual value prxUpPCHdes = IE value - 120
	prxUpPCHdes							INTEGER (0..62),
	powerRampStep						INTEGER (0..3),
	max-SYNC-UL-Transmissions			ENUMERATED { tr1, tr2, tr4, tr8 } ,
    mmax                                INTEGER(1..32)
}

TDD-FPACH-CCode16-r4 ::=			ENUMERATED {
										cc16-1, cc16-2, cc16-3, cc16-4,
										cc16-5, cc16-6, cc16-7, cc16-8,
										cc16-9, cc16-10, cc16-11, cc16-12,
										cc16-13, cc16-14, cc16-15, cc16-16 }

TDD-UL-Interference ::=				INTEGER (-110..-52)

TDD-PICH-CCode ::=					ENUMERATED {
										cc16-1, cc16-2, cc16-3, cc16-4,
										cc16-5, cc16-6, cc16-7, cc16-8,
										cc16-9, cc16-10, cc16-11, cc16-12,
										cc16-13, cc16-14, cc16-15, cc16-16 }

TDD-PRACH-CCode8 ::=				ENUMERATED {
										cc8-1, cc8-2, cc8-3, cc8-4,
										cc8-5, cc8-6, cc8-7, cc8-8 }

TDD-PRACH-CCode16 ::=				ENUMERATED {
										cc16-1, cc16-2, cc16-3, cc16-4,
										cc16-5, cc16-6, cc16-7, cc16-8,
										cc16-9, cc16-10, cc16-11, cc16-12,
										cc16-13, cc16-14, cc16-15, cc16-16 }

TDD-PRACH-CCode-LCR-r4 ::=			ENUMERATED {
										cc4-1, cc4-2, cc4-3, cc4-4,
										cc8-1, cc8-2, cc8-3, cc8-4,
										cc8-5, cc8-6, cc8-7, cc8-8,
										cc16-1, cc16-2, cc16-3, cc16-4,
										cc16-5, cc16-6, cc16-7, cc16-8,
										cc16-9, cc16-10, cc16-11, cc16-12,
										cc16-13, cc16-14, cc16-15, cc16-16 }

TDD-PRACH-CCodeList ::= 			CHOICE {
	sf8									SEQUENCE (SIZE (1..8)) OF 
											TDD-PRACH-CCode8,
-- Channelisation codes cc16-9, cc16-10, cc16-11, cc16-12, cc16-13, cc16-14,
-- cc16-15 and cc16-16 shall not be used
	sf16								SEQUENCE (SIZE (1..8)) OF
											TDD-PRACH-CCode16
}

TFC-ControlDuration ::=				ENUMERATED {
										tfc-cd1, tfc-cd2, tfc-cd4, tfc-cd8,
										tfc-cd16, tfc-cd24, tfc-cd32,
										tfc-cd48, tfc-cd64, tfc-cd128,
										tfc-cd192, tfc-cd256, tfc-cd512 }

TFCI-Coding ::=						ENUMERATED { 
										tfci-bits-4, tfci-bits-8,
										tfci-bits-16, tfci-bits-32 }

TGCFN ::=							INTEGER (0..255)

-- In TGD, value 270 represents "undefined" in the tabular description.
TGD ::=								INTEGER (15..270)

TGL ::=								INTEGER (1..14)

TGMP ::=							ENUMERATED {
										tdd-Measurement, fdd-Measurement,
										gsm-CarrierRSSIMeasurement, 
										gsm-initialBSICIdentification, gsmBSICReconfirmation,
										multi-carrier }

TGP-Sequence ::=					SEQUENCE {
	tgpsi								TGPSI,
	tgps-Status							CHOICE {
		activate							SEQUENCE {
			tgcfn								TGCFN
		},
		deactivate							NULL
	},
	tgps-ConfigurationParams			TGPS-ConfigurationParams			OPTIONAL
}

TGPS-Reconfiguration-CFN ::=		INTEGER (0..255)

TGP-SequenceList ::=				SEQUENCE (SIZE (1..maxTGPS)) OF
										TGP-Sequence

TGP-SequenceShort ::=				SEQUENCE {
	tgpsi								TGPSI,
	tgps-Status							CHOICE {
		activate							SEQUENCE {
			tgcfn								TGCFN
		},
		deactivate							NULL
	}
}

TGPL ::=							INTEGER (1..144)

-- TABULAR: In TGPRC, value 0 represents "infinity" in the tabular description.
TGPRC ::=							INTEGER (0..511)

TGPS-ConfigurationParams ::=		SEQUENCE {
	tgmp								TGMP,
	tgprc								TGPRC,
	tgsn								TGSN,
	tgl1								TGL,
	tgl2								TGL									OPTIONAL,
	tgd									TGD,
	tgpl1								TGPL,
	-- dummy is not used in this version of the specification, it should
	-- not be sent and if received it shall be ignored.
	dummy							TGPL								OPTIONAL,
	rpp									RPP,
	itp									ITP,
	-- TABULAR: Compressed mode method is nested inside UL-DL-Mode
	ul-DL-Mode							UL-DL-Mode,
	dl-FrameType						DL-FrameType,
	deltaSIR1							DeltaSIR,
	deltaSIRAfter1						DeltaSIR,
	deltaSIR2							DeltaSIR							OPTIONAL,
	deltaSIRAfter2						DeltaSIR							OPTIONAL,
	nidentifyAbort						NidentifyAbort						OPTIONAL,
	treconfirmAbort						TreconfirmAbort						OPTIONAL
}

TGPSI ::=							INTEGER (1..maxTGPS)

TGSN ::=							INTEGER (0..14)

TimeInfo ::=						SEQUENCE {
	activationTime						ActivationTime						OPTIONAL,
	durationTimeInfo					DurationTimeInfo					OPTIONAL
}

TimeslotList ::=					SEQUENCE (SIZE (1..maxTS)) OF
										TimeslotNumber

TimeslotList-r4 ::=					CHOICE {
	tdd384								SEQUENCE (SIZE (1..maxTS)) OF
											TimeslotNumber,
	tdd128								SEQUENCE (SIZE (1..maxTS-LCR)) OF
											TimeslotNumber-LCR-r4
}

-- If TimeslotNumber is included for a 1.28Mcps TDD description, it shall take values from 0..6
TimeslotNumber ::=						INTEGER (0..14)

TimeslotNumber-LCR-r4 ::=				INTEGER (0..6)

TimeslotNumber-PRACH-LCR-r4 ::=		INTEGER (1..6)

TimeslotSync2 ::=				INTEGER (0..6)

-- Actual value TimingOffset = IE value * 256
TimingOffset ::=					INTEGER (0..149)

TimingMaintainedSynchInd ::=		ENUMERATED { false }

TPC-CombinationIndex ::=			INTEGER (0..5)

-- Actual value TPC-StepSizeFDD = IE value + 1
TPC-StepSizeFDD ::=					INTEGER (0..1)

TPC-StepSizeTDD ::=					INTEGER (1..3)

-- Actual value TreconfirmAbort = IE value * 0.5 seconds
TreconfirmAbort ::=	INTEGER (1..20)

TX-DiversityMode ::=				ENUMERATED {
										noDiversity,
										sttd,
										closedLoopMode1,
		-- dummy is not used in this version of the specification, it should
		-- not be sent and if received it should be ignored.
										dummy }

UARFCN ::=						INTEGER (0..16383)

UCSM-Info ::=						SEQUENCE {
	minimumSpreadingFactor				MinimumSpreadingFactor,
	nf-Max								NF-Max,
	channelReqParamsForUCSM				ChannelReqParamsForUCSM
}

UL-CCTrCH ::=						SEQUENCE {
	tfcs-ID								TFCS-IdentityPlain					DEFAULT 1,
	ul-TargetSIR						UL-TargetSIR,
	timeInfo							TimeInfo,
	commonTimeslotInfo					CommonTimeslotInfo					OPTIONAL,
	ul-CCTrCH-TimeslotsCodes			UplinkTimeslotsCodes				OPTIONAL
}

UL-CCTrCH-r4 ::=					SEQUENCE {
	tfcs-ID								TFCS-IdentityPlain					DEFAULT 1,
	-- The IE ul-TargetSIR corresponds to PRX-DPCHdes for 1.28Mcps TDD
	-- Actual value PRX-DPCHdes = (value of IE "ul-TargetSIR"  120)
	ul-TargetSIR						UL-TargetSIR,
	timeInfo							TimeInfo,
	commonTimeslotInfo					CommonTimeslotInfo					OPTIONAL,
	tddOption							CHOICE {
		tdd384								SEQUENCE {
			ul-CCTrCH-TimeslotsCodes			UplinkTimeslotsCodes		OPTIONAL
		},
		tdd128								SEQUENCE {
			ul-CCTrCH-TimeslotsCodes			UplinkTimeslotsCodes-LCR-r4	OPTIONAL
		}
	}
}

UL-CCTrCHList ::=					SEQUENCE (SIZE (1..maxCCTrCH)) OF
										UL-CCTrCH

UL-CCTrCHList-r4 ::=				SEQUENCE (SIZE (1..maxCCTrCH)) OF
										UL-CCTrCH-r4

UL-CCTrCHListToRemove ::=			SEQUENCE (SIZE (1..maxCCTrCH)) OF
										TFCS-IdentityPlain

UL-CCTrChTPCList ::=				SEQUENCE (SIZE (0..maxCCTrCH)) OF
											TFCS-Identity

UL-ChannelRequirement ::=			CHOICE {
	ul-DPCH-Info						UL-DPCH-Info,
	-- dummy is not used in this version of the specification, it should
	-- not be sent and if received the UE behaviour is not specified.
	dummy								CPCH-SetInfo
}

UL-ChannelRequirement-r4 ::=		CHOICE {
	ul-DPCH-Info						UL-DPCH-Info-r4,
	-- dummy is not used in this version of the specification, it should
	-- not be sent and if received the UE behaviour is not specified.
	dummy								CPCH-SetInfo
}

UL-ChannelRequirement-r5 ::=		CHOICE {
	ul-DPCH-Info						UL-DPCH-Info-r5,
	-- dummy is not used in this version of the specification, it should
	-- not be sent and if received the UE behaviour is not specified.
	dummy								CPCH-SetInfo
}

-- Note: the reference to CPCH in the element name below is incorrect. The name is not
-- changed to keep it aligned with R99.
UL-ChannelRequirementWithCPCH-SetID ::=	CHOICE {
	ul-DPCH-Info						UL-DPCH-Info,
	-- dummy1 and dummy 2 are not used in this version of the specification, they should
	-- not be sent and if received the UE behaviour is not specified.
	dummy1								CPCH-SetInfo,
	dummy2								CPCH-SetID
}

-- Note: the reference to CPCH in the element name below is incorrect. The name is not
-- changed to keep it aligned with R99.
UL-ChannelRequirementWithCPCH-SetID-r4 ::=	CHOICE {
	ul-DPCH-Info						UL-DPCH-Info-r4,
	-- dummy1 and dummy2 are not used in this version of the specification, they 
	-- should not be sent and if received the UE behaviour is not specified.
	dummy1								CPCH-SetInfo,
	dummy2								CPCH-SetID
}

-- Note: the reference to CPCH in the element name below is incorrect. The name is not
-- changed to keep it aligned with R99.
UL-ChannelRequirementWithCPCH-SetID-r5 ::=	CHOICE {
	ul-DPCH-Info						UL-DPCH-Info-r5,
	-- dummy1 and dummy2 are not used in this version of the specification, they should
	-- not be sent and if received the UE behaviour is not specified.
	dummy1								CPCH-SetInfo,
	dummy2								CPCH-SetID
}

UL-CompressedModeMethod ::=			ENUMERATED {
										sf-2, 
										higherLayerScheduling }

UL-DL-Mode ::=						CHOICE {
	ul									UL-CompressedModeMethod,
	dl									DL-CompressedModeMethod,
	ul-and-dl								SEQUENCE {
		ul									UL-CompressedModeMethod,
		dl									DL-CompressedModeMethod
	}}

UL-DPCCH-SlotFormat ::=				ENUMERATED {
										slf0, slf1, slf2 }

UL-DPCH-Info ::=					SEQUENCE {
	ul-DPCH-PowerControlInfo			UL-DPCH-PowerControlInfo			OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			scramblingCodeType					ScramblingCodeType,
			scramblingCode						UL-ScramblingCode,
			numberOfDPDCH						NumberOfDPDCH				DEFAULT 1,
			spreadingFactor						SpreadingFactor,
			tfci-Existence						BOOLEAN,
			-- numberOfFBI-Bits is conditional based on history
			numberOfFBI-Bits					NumberOfFBI-Bits			OPTIONAL,
			puncturingLimit						PuncturingLimit
		},
		tdd									SEQUENCE {
			ul-TimingAdvance					UL-TimingAdvanceControl		OPTIONAL,
			ul-CCTrCHList						UL-CCTrCHList				OPTIONAL,
			ul-CCTrCHListToRemove				UL-CCTrCHListToRemove		OPTIONAL
		}
	}
}

UL-DPCH-Info-r4 ::=					SEQUENCE {
	ul-DPCH-PowerControlInfo			UL-DPCH-PowerControlInfo-r4			OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			scramblingCodeType					ScramblingCodeType,
			scramblingCode						UL-ScramblingCode,
			numberOfDPDCH						NumberOfDPDCH				DEFAULT 1,
			spreadingFactor						SpreadingFactor,
			tfci-Existence						BOOLEAN,
			-- numberOfFBI-Bits is conditional based on history
			numberOfFBI-Bits					NumberOfFBI-Bits			OPTIONAL,
			puncturingLimit						PuncturingLimit
		},
		tdd									SEQUENCE {
			ul-TimingAdvance					UL-TimingAdvanceControl-r4	OPTIONAL,
			ul-CCTrCHList						UL-CCTrCHList-r4			OPTIONAL,
			ul-CCTrCHListToRemove				UL-CCTrCHListToRemove		OPTIONAL
		}
	}
}

UL-DPCH-Info-r5 ::=					SEQUENCE {
	ul-DPCH-PowerControlInfo			UL-DPCH-PowerControlInfo-r5			OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			scramblingCodeType					ScramblingCodeType,
			scramblingCode						UL-ScramblingCode,
			numberOfDPDCH						NumberOfDPDCH				DEFAULT 1,
			spreadingFactor						SpreadingFactor,
			tfci-Existence						BOOLEAN,
			-- numberOfFBI-Bits is conditional based on history
			numberOfFBI-Bits					NumberOfFBI-Bits			OPTIONAL,
			puncturingLimit						PuncturingLimit
		},
		tdd									SEQUENCE {
			ul-TimingAdvance					UL-TimingAdvanceControl-r4	OPTIONAL,
			ul-CCTrCHList						UL-CCTrCHList-r4			OPTIONAL,
			ul-CCTrCHListToRemove				UL-CCTrCHListToRemove		OPTIONAL
		}
	}
}

UL-DPCH-Info-r6 ::=					SEQUENCE {
	ul-DPCH-PowerControlInfo			UL-DPCH-PowerControlInfo-r6			OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			scramblingCodeType					ScramblingCodeType,
			scramblingCode						UL-ScramblingCode,
			dpdchPresence						CHOICE {
				present								SEQUENCE {
					numberOfDPDCH						NumberOfDPDCH				DEFAULT 1,
					spreadingFactor						SpreadingFactor,
					tfci-Existence						BOOLEAN,
					-- numberOfFBI-Bits is conditional based on history
					numberOfFBI-Bits					NumberOfFBI-Bits			OPTIONAL,
					puncturingLimit						PuncturingLimit
						},
				notPresent							SEQUENCE {
					tfci-Existence						BOOLEAN,
					-- numberOfFBI-Bits is conditional based on history
					numberOfFBI-Bits					NumberOfFBI-Bits			OPTIONAL
				}
			}
},
		tdd									SEQUENCE {
			ul-TimingAdvance					UL-TimingAdvanceControl-r4	OPTIONAL,
			ul-CCTrCHList						UL-CCTrCHList-r4			OPTIONAL,
			ul-CCTrCHListToRemove				UL-CCTrCHListToRemove		OPTIONAL
		}
	}
}

UL-DPCH-InfoPostFDD ::=				SEQUENCE {
	ul-DPCH-PowerControlInfo			UL-DPCH-PowerControlInfoPostFDD,
			scramblingCodeType					ScramblingCodeType,
			reducedScramblingCodeNumber			ReducedScramblingCodeNumber,
			spreadingFactor						SpreadingFactor

}

UL-DPCH-InfoPostTDD ::=				SEQUENCE {
	ul-DPCH-PowerControlInfo			UL-DPCH-PowerControlInfoPostTDD,
	ul-TimingAdvance					UL-TimingAdvanceControl					OPTIONAL,
	ul-CCTrCH-TimeslotsCodes			UplinkTimeslotsCodes
}

UL-DPCH-InfoPostTDD-LCR-r4 ::=		SEQUENCE {
	ul-DPCH-PowerControlInfo			UL-DPCH-PowerControlInfoPostTDD-LCR-r4,
	ul-TimingAdvance					UL-TimingAdvanceControl-LCR-r4				OPTIONAL,
	ul-CCTrCH-TimeslotsCodes			UplinkTimeslotsCodes-LCR-r4
}

UL-DPCH-InfoPredef ::=				SEQUENCE {
	ul-DPCH-PowerControlInfo			UL-DPCH-PowerControlInfoPredef,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			tfci-Existence						BOOLEAN,
			puncturingLimit						PuncturingLimit
		},
		tdd									SEQUENCE {
			commonTimeslotInfo					CommonTimeslotInfo
		}
	}
}

UL-DPCH-PowerControlInfo ::=		CHOICE {
	fdd									SEQUENCE {
		dpcch-PowerOffset					DPCCH-PowerOffset,
		pc-Preamble							PC-Preamble,
		sRB-delay							SRB-delay,
		-- TABULAR: TPC step size nested inside PowerControlAlgorithm
		powerControlAlgorithm				PowerControlAlgorithm
	},
	tdd									SEQUENCE {
		ul-TargetSIR						UL-TargetSIR				OPTIONAL,
		ul-OL-PC-Signalling					CHOICE {
			broadcast-UL-OL-PC-info				NULL,
			individuallySignalled				SEQUENCE {
				individualTS-InterferenceList		IndividualTS-InterferenceList,
				dpch-ConstantValue					ConstantValueTdd,
				primaryCCPCH-TX-Power				PrimaryCCPCH-TX-Power	
			}	
		}																OPTIONAL
	}
}

UL-DPCH-PowerControlInfo-r4 ::=		CHOICE {
	fdd									SEQUENCE {
		dpcch-PowerOffset					DPCCH-PowerOffset,
		pc-Preamble							PC-Preamble,
		sRB-delay							SRB-delay,
		-- TABULAR: TPC step size nested inside PowerControlAlgorithm
		powerControlAlgorithm				PowerControlAlgorithm
	},
	tdd									SEQUENCE {
		-- The IE ul-TargetSIR corresponds to PRX-DPCHdes for 1.28Mcps TDD
		-- Actual value PRX-DPCHdes = (value of IE "ul-TargetSIR"  120)
		ul-TargetSIR						UL-TargetSIR				OPTIONAL,
		ul-OL-PC-Signalling					CHOICE {
			broadcast-UL-OL-PC-info				NULL,
			individuallySignalled				SEQUENCE {
				tddOption							CHOICE {
					tdd384								SEQUENCE {
						individualTS-InterferenceList		IndividualTS-InterferenceList,
						dpch-ConstantValue					ConstantValue
					},
					tdd128								SEQUENCE {
						tpc-StepSize						TPC-StepSizeTDD
					}
				},
				primaryCCPCH-TX-Power				PrimaryCCPCH-TX-Power
			}
		}
	}
}

UL-DPCH-PowerControlInfo-r5 ::=		CHOICE {
	fdd									SEQUENCE {
		dpcch-PowerOffset					DPCCH-PowerOffset,
		pc-Preamble							PC-Preamble,
		sRB-delay							SRB-delay,
		-- TABULAR: TPC step size nested inside PowerControlAlgorithm
		powerControlAlgorithm				PowerControlAlgorithm,
		deltaACK							DeltaACK	OPTIONAL,
		deltaNACK							DeltaNACK	OPTIONAL,
		ack-NACK-repetition-factor			ACK-NACK-repetitionFactor	OPTIONAL
	},
	tdd									SEQUENCE {
		-- The IE ul-TargetSIR corresponds to PRX-DPCHdes for 1.28Mcps TDD
		-- Actual value PRX-DPCHdes = (value of IE "ul-TargetSIR"  120)
		ul-TargetSIR						UL-TargetSIR				OPTIONAL,
		ul-OL-PC-Signalling					CHOICE {
			broadcast-UL-OL-PC-info				NULL,
			individuallySignalled				SEQUENCE {
				tddOption							CHOICE {
					tdd384								SEQUENCE {
						individualTS-InterferenceList		IndividualTS-InterferenceList,
						dpch-ConstantValue					ConstantValue
					},
					tdd128								SEQUENCE {
						tpc-StepSize						TPC-StepSizeTDD
					}
				},
				primaryCCPCH-TX-Power				PrimaryCCPCH-TX-Power
			}
		}
	}
}

UL-DPCH-PowerControlInfo-r6 ::=		CHOICE {
	fdd									SEQUENCE {
		dpcch-PowerOffset					DPCCH-PowerOffset,
		pc-Preamble							PC-Preamble,
		sRB-delay							SRB-delay,
		-- TABULAR: TPC step size nested inside PowerControlAlgorithm
		powerControlAlgorithm				PowerControlAlgorithm,
		deltaACK							DeltaACK	OPTIONAL,
		deltaNACK							DeltaNACK	OPTIONAL,
		ack-NACK-repetition-factor			ACK-NACK-repetitionFactor	OPTIONAL,
		harq-Preamble-Mode					HARQ-Preamble-Mode
	},
	tdd									SEQUENCE {
		-- The IE ul-TargetSIR corresponds to PRX-DPCHdes for 1.28Mcps TDD
		-- Actual value PRX-DPCHdes = (value of IE "ul-TargetSIR"  120)
		ul-TargetSIR						UL-TargetSIR				OPTIONAL,
		ul-OL-PC-Signalling					CHOICE {
			broadcast-UL-OL-PC-info				NULL,
			individuallySignalled				SEQUENCE {
				tddOption							CHOICE {
					tdd384								SEQUENCE {
						individualTS-InterferenceList		IndividualTS-InterferenceList,
						dpch-ConstantValue					ConstantValue
					},
					tdd128								SEQUENCE {
						beaconPLEst							BEACON-PL-Est		OPTIONAL,
						tpc-StepSize						TPC-StepSizeTDD
					}
				},
				primaryCCPCH-TX-Power				PrimaryCCPCH-TX-Power
			}
		}
	}
}

UL-DPCH-PowerControlInfoPostFDD ::=	SEQUENCE {
	-- DPCCH-PowerOffset2 has a smaller range to save bits
	dpcch-PowerOffset					DPCCH-PowerOffset2,
	pc-Preamble							PC-Preamble,
	sRB-delay							SRB-delay
}

UL-DPCH-PowerControlInfoPostTDD ::=	SEQUENCE {
	ul-TargetSIR						UL-TargetSIR,
	ul-TimeslotInterference				TDD-UL-Interference
}

UL-DPCH-PowerControlInfoPostTDD-LCR-r4 ::=	SEQUENCE {
	-- The IE ul-TargetSIR corresponds to PRX-DPCHdes for 1.28Mcps TDD
	-- Actual value PRX-DPCHdes = (value of IE "ul-TargetSIR"  120)
	ul-TargetSIR						UL-TargetSIR
}

UL-DPCH-PowerControlInfoPredef ::=		CHOICE {
	fdd									SEQUENCE {
		-- TABULAR: TPC step size nested inside PowerControlAlgorithm
		powerControlAlgorithm				PowerControlAlgorithm
	},
	tdd									SEQUENCE {
		-- dpch-ConstantValue shall be ignored if in 1.28Mcps TDD mode.
		dpch-ConstantValue					ConstantValueTdd
	}
}

UL-EDCH-Information-r6 ::=			SEQUENCE {
	mac-es-e-resetIndicator				ENUMERATED { true }					OPTIONAL,
	e-DPCCH-Info						E-DPCCH-Info						OPTIONAL,
	e-DPDCH-Info						E-DPDCH-Info						OPTIONAL
}

UL-Interference ::=					INTEGER (-110..-70)

UL-ScramblingCode ::=				INTEGER (0..16777215)


UL-SynchronisationParameters-r4 ::=	SEQUENCE {
	stepSize							INTEGER (1..8),
	frequency							INTEGER (1..8)
}

-- Actual value UL-TargetSIR = (IE value * 0.5) - 11
UL-TargetSIR ::=					INTEGER (0..62)

UL-TimingAdvance ::=				INTEGER (0..63)

UL-TimingAdvanceControl ::=			CHOICE {
	disabled							NULL,
	enabled								SEQUENCE {
		ul-TimingAdvance					UL-TimingAdvance				OPTIONAL,
		activationTime						ActivationTime					OPTIONAL
	}
}

UL-TimingAdvanceControl-r4 ::=		CHOICE {
	disabled							NULL,
	enabled								SEQUENCE {
		tddOption							CHOICE {
			tdd384								SEQUENCE {
				ul-TimingAdvance					UL-TimingAdvance				OPTIONAL,
				activationTime						ActivationTime					OPTIONAL
			},
			tdd128								SEQUENCE {
				ul-SynchronisationParameters		UL-SynchronisationParameters-r4	OPTIONAL,
				synchronisationParameters			SynchronisationParameters-r4	OPTIONAL
			}
		}
	}
}

UL-TimingAdvanceControl-LCR-r4 ::=	CHOICE {
	disabled							NULL,
	enabled								SEQUENCE {
		ul-SynchronisationParameters		UL-SynchronisationParameters-r4	OPTIONAL,
		synchronisationParameters			SynchronisationParameters-r4	OPTIONAL
	}
}

UL-TS-ChannelisationCode ::=		ENUMERATED {
										cc1-1, cc2-1, cc2-2,
										cc4-1, cc4-2, cc4-3, cc4-4,
										cc8-1, cc8-2, cc8-3, cc8-4,
										cc8-5, cc8-6, cc8-7, cc8-8,
										cc16-1, cc16-2, cc16-3, cc16-4,
										cc16-5, cc16-6, cc16-7, cc16-8,
										cc16-9, cc16-10, cc16-11, cc16-12,
										cc16-13, cc16-14, cc16-15, cc16-16 }

UL-TS-ChannelisationCodeList ::= 	SEQUENCE (SIZE (1..2)) OF
										UL-TS-ChannelisationCode

UplinkAdditionalTimeslots ::=		SEQUENCE {
	parameters							CHOICE {
		sameAsLast							SEQUENCE {
			timeslotNumber						TimeslotNumber
		},
		newParameters						SEQUENCE {
			individualTimeslotInfo						IndividualTimeslotInfo,
			ul-TS-ChannelisationCodeList				UL-TS-ChannelisationCodeList
		}
	}
}

UplinkAdditionalTimeslots-LCR-r4 ::=	SEQUENCE {
	parameters							CHOICE {
		sameAsLast							SEQUENCE {
			timeslotNumber						TimeslotNumber
		},
		newParameters						SEQUENCE {
			individualTimeslotInfo						IndividualTimeslotInfo-LCR-r4,
			ul-TS-ChannelisationCodeList				UL-TS-ChannelisationCodeList
		}
	}
}

UplinkTimeslotsCodes ::=			SEQUENCE {
	dynamicSFusage						BOOLEAN,
	firstIndividualTimeslotInfo			IndividualTimeslotInfo,
	ul-TS-ChannelisationCodeList		UL-TS-ChannelisationCodeList,
	moreTimeslots						CHOICE {
		noMore								NULL,
		additionalTimeslots					CHOICE {
			consecutive							SEQUENCE {
				numAdditionalTimeslots				INTEGER (1..maxTS-1)
			},
			timeslotList						SEQUENCE (SIZE (1..maxTS-1)) OF
													UplinkAdditionalTimeslots
		}
	}
}

UplinkTimeslotsCodes-LCR-r4 ::=		SEQUENCE {
	dynamicSFusage						BOOLEAN,
	firstIndividualTimeslotInfo			IndividualTimeslotInfo-LCR-r4,
	ul-TS-ChannelisationCodeList		UL-TS-ChannelisationCodeList,
	moreTimeslots						CHOICE {
		noMore								NULL,
		additionalTimeslots					CHOICE {
			consecutive							SEQUENCE {
				numAdditionalTimeslots				INTEGER (1..maxTS-LCR-1)
			},
			timeslotList						SEQUENCE (SIZE (1..maxTS-LCR-1)) OF
													UplinkAdditionalTimeslots-LCR-r4
		}
	}
}

Wi-LCR ::=                                                               INTEGER(1..4)

-- ***************************************************
--
--     MEASUREMENT INFORMATION ELEMENTS (10.3.7)
--
-- ***************************************************

AcquisitionSatInfo ::=				SEQUENCE {
	satID								SatID,
	-- Actual value dopplerOthOrder = IE value * 2.5
	doppler0thOrder						INTEGER (-2048..2047),
	extraDopplerInfo					ExtraDopplerInfo					OPTIONAL,
	codePhase							INTEGER (0..1022),
	integerCodePhase					INTEGER (0..19),
	gps-BitNumber						INTEGER (0..3),
	codePhaseSearchWindow				CodePhaseSearchWindow,
	azimuthAndElevation					AzimuthAndElevation					OPTIONAL
}	

AcquisitionSatInfoList ::=			SEQUENCE (SIZE (1..maxSat)) OF
										AcquisitionSatInfo


AdditionalMeasurementID-List ::=	SEQUENCE (SIZE (1..maxAdditionalMeas)) OF
										MeasurementIdentity

AlmanacSatInfo ::=					SEQUENCE {
	dataID								INTEGER (0..3),
	satID								SatID,
	e									BIT STRING (SIZE (16)),
	t-oa								BIT STRING (SIZE (8)),
	deltaI								BIT STRING (SIZE (16)),
	omegaDot							BIT STRING (SIZE (16)),
	satHealth							BIT STRING (SIZE (8)),
	a-Sqrt								BIT STRING (SIZE (24)),
	omega0								BIT STRING (SIZE (24)),
	m0									BIT STRING (SIZE (24)),
	omega								BIT STRING (SIZE (24)),
	af0									BIT STRING (SIZE (11)),
	af1									BIT STRING (SIZE (11))
}

AlmanacSatInfoList ::=				SEQUENCE (SIZE (1..maxSat)) OF
										AlmanacSatInfo

AverageRLC-BufferPayload ::=		ENUMERATED {
										pla0, pla4, pla8, pla16, pla32,
										pla64, pla128, pla256, pla512,
										pla1024, pla2k, pla4k, pla8k, pla16k,
										pla32k, pla64k, pla128k, pla256k,
										pla512k, pla1024k, spare12, spare11,
										spare10, spare9, spare8, spare7, spare6,
										spare5, spare4, spare3, spare2, spare1 }
	
AzimuthAndElevation ::=				SEQUENCE {
	-- Actual value azimuth = IE value * 11.25
	azimuth								INTEGER (0..31),
	-- Actual value elevation = IE value * 11.25
	elevation							INTEGER (0..7)
}

BadSatList ::=						SEQUENCE (SIZE (1..maxSat)) OF
										INTEGER (0..63)

Frequency-Band ::=					ENUMERATED {
										dcs1800BandUsed, pcs1900BandUsed }

BCCH-ARFCN ::=						INTEGER (0..1023)

BLER-MeasurementResults ::=			SEQUENCE {
	transportChannelIdentity			TransportChannelIdentity,
	dl-TransportChannelBLER				DL-TransportChannelBLER				OPTIONAL
}

BLER-MeasurementResultsList ::=		SEQUENCE (SIZE (1..maxTrCH)) OF
										BLER-MeasurementResults

BLER-TransChIdList ::=				SEQUENCE (SIZE (1..maxTrCH)) OF
										TransportChannelIdentity

BSIC-VerificationRequired ::=		ENUMERATED {
										required, notRequired }

BSICReported ::=					CHOICE {
	-- Value maxCellMeas is not allowed for verifiedBSIC
	verifiedBSIC						INTEGER (0..maxCellMeas),
	nonVerifiedBSIC						BCCH-ARFCN
}

BurstModeParameters ::=				SEQUENCE {
	burstStart							INTEGER (0..15),
	burstLength							INTEGER (10..25),
	burstFreq							INTEGER (1..16)
}

CellDCH-ReportCriteria ::=			CHOICE {
	intraFreqReportingCriteria			IntraFreqReportingCriteria,
	periodicalReportingCriteria			PeriodicalReportingCriteria
}

CellDCH-ReportCriteria-LCR-r4 ::=	CHOICE {
	intraFreqReportingCriteria			IntraFreqReportingCriteria-LCR-r4,
	periodicalReportingCriteria			PeriodicalReportingCriteria
}

-- Actual value CellIndividualOffset = IE value * 0.5
CellIndividualOffset ::=			INTEGER (-20..20)


CellInfo ::=						SEQUENCE {
	cellIndividualOffset				CellIndividualOffset			 	DEFAULT 0,
	referenceTimeDifferenceToCell		ReferenceTimeDifferenceToCell		OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			primaryCPICH-Info					PrimaryCPICH-Info			OPTIONAL,
			primaryCPICH-TX-Power				PrimaryCPICH-TX-Power		OPTIONAL,
			readSFN-Indicator					BOOLEAN,
			tx-DiversityIndicator				BOOLEAN		
		},
		tdd									SEQUENCE {
			primaryCCPCH-Info					PrimaryCCPCH-Info,
			primaryCCPCH-TX-Power				PrimaryCCPCH-TX-Power		OPTIONAL,
			timeslotInfoList					TimeslotInfoList			OPTIONAL,
			readSFN-Indicator					BOOLEAN
		}
	}
}

CellInfo-r4 ::=						SEQUENCE {
	cellIndividualOffset				CellIndividualOffset			 	DEFAULT 0,
	referenceTimeDifferenceToCell		ReferenceTimeDifferenceToCell		OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			primaryCPICH-Info					PrimaryCPICH-Info			OPTIONAL,
			primaryCPICH-TX-Power				PrimaryCPICH-TX-Power		OPTIONAL,
			readSFN-Indicator					BOOLEAN,
			tx-DiversityIndicator				BOOLEAN		
		},
		tdd									SEQUENCE {
			primaryCCPCH-Info					PrimaryCCPCH-Info-r4,
			primaryCCPCH-TX-Power				PrimaryCCPCH-TX-Power		OPTIONAL,
			timeslotInfoList					TimeslotInfoList-r4			OPTIONAL,
			readSFN-Indicator					BOOLEAN

		}
	}
}

CellInfoSI-RSCP ::=					SEQUENCE {
	cellIndividualOffset				CellIndividualOffset		 		DEFAULT 0,
	referenceTimeDifferenceToCell		ReferenceTimeDifferenceToCell		OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			primaryCPICH-Info					PrimaryCPICH-Info			OPTIONAL,
			primaryCPICH-TX-Power				PrimaryCPICH-TX-Power		OPTIONAL,
			readSFN-Indicator					BOOLEAN,
			tx-DiversityIndicator				BOOLEAN		
		},
		tdd									SEQUENCE {
			primaryCCPCH-Info					PrimaryCCPCH-Info,
			primaryCCPCH-TX-Power				PrimaryCCPCH-TX-Power		OPTIONAL,
			timeslotInfoList					TimeslotInfoList			OPTIONAL,
			readSFN-Indicator					BOOLEAN
		}
	},
	cellSelectionReselectionInfo		CellSelectReselectInfoSIB-11-12-RSCP		OPTIONAL
}

CellInfoSI-RSCP-LCR-r4 ::=			SEQUENCE {
	cellIndividualOffset				CellIndividualOffset		 		DEFAULT 0,
	referenceTimeDifferenceToCell		ReferenceTimeDifferenceToCell		OPTIONAL,
	primaryCCPCH-Info					PrimaryCCPCH-Info-LCR-r4,
	primaryCCPCH-TX-Power				PrimaryCCPCH-TX-Power				OPTIONAL,
	timeslotInfoList					TimeslotInfoList-LCR-r4				OPTIONAL,
	readSFN-Indicator					BOOLEAN,
	cellSelectionReselectionInfo		CellSelectReselectInfoSIB-11-12-RSCP		OPTIONAL
}

CellInfoSI-ECN0 ::=					SEQUENCE {
	cellIndividualOffset				CellIndividualOffset		 		DEFAULT 0,
	referenceTimeDifferenceToCell		ReferenceTimeDifferenceToCell		OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			primaryCPICH-Info					PrimaryCPICH-Info			OPTIONAL,
			primaryCPICH-TX-Power				PrimaryCPICH-TX-Power		OPTIONAL,
			readSFN-Indicator					BOOLEAN,
			tx-DiversityIndicator				BOOLEAN		
		},
		tdd									SEQUENCE {
			primaryCCPCH-Info					PrimaryCCPCH-Info,
			primaryCCPCH-TX-Power				PrimaryCCPCH-TX-Power		OPTIONAL,
			timeslotInfoList					TimeslotInfoList			OPTIONAL,
			readSFN-Indicator					BOOLEAN
		}
	},
	cellSelectionReselectionInfo		CellSelectReselectInfoSIB-11-12-ECN0	OPTIONAL
}

CellInfoSI-ECN0-LCR-r4 ::=			SEQUENCE {
	cellIndividualOffset				CellIndividualOffset		 		DEFAULT 0,
	referenceTimeDifferenceToCell		ReferenceTimeDifferenceToCell		OPTIONAL,
	primaryCCPCH-Info					PrimaryCCPCH-Info-LCR-r4,
	primaryCCPCH-TX-Power				PrimaryCCPCH-TX-Power				OPTIONAL,
	timeslotInfoList					TimeslotInfoList-LCR-r4				OPTIONAL,
	readSFN-Indicator					BOOLEAN,
	cellSelectionReselectionInfo		CellSelectReselectInfoSIB-11-12-ECN0	OPTIONAL
}

CellInfoSI-HCS-RSCP ::=				SEQUENCE {
	cellIndividualOffset				CellIndividualOffset		 		DEFAULT 0,
	referenceTimeDifferenceToCell		ReferenceTimeDifferenceToCell		OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			primaryCPICH-Info					PrimaryCPICH-Info			OPTIONAL,
			primaryCPICH-TX-Power				PrimaryCPICH-TX-Power		OPTIONAL,
			readSFN-Indicator					BOOLEAN,
			tx-DiversityIndicator				BOOLEAN		
		},
		tdd									SEQUENCE {
			primaryCCPCH-Info					PrimaryCCPCH-Info,
			primaryCCPCH-TX-Power				PrimaryCCPCH-TX-Power		OPTIONAL,
			timeslotInfoList					TimeslotInfoList			OPTIONAL,
			readSFN-Indicator					BOOLEAN
		}
	},
	cellSelectionReselectionInfo		CellSelectReselectInfoSIB-11-12-HCS-RSCP	OPTIONAL
}

CellInfoSI-HCS-RSCP-LCR-r4 ::=		SEQUENCE {
	cellIndividualOffset				CellIndividualOffset		 		DEFAULT 0,
	referenceTimeDifferenceToCell		ReferenceTimeDifferenceToCell		OPTIONAL,
	primaryCCPCH-Info					PrimaryCCPCH-Info-LCR-r4,
	primaryCCPCH-TX-Power				PrimaryCCPCH-TX-Power				OPTIONAL,
	timeslotInfoList					TimeslotInfoList-LCR-r4				OPTIONAL,
	readSFN-Indicator					BOOLEAN,
	cellSelectionReselectionInfo		CellSelectReselectInfoSIB-11-12-HCS-RSCP	OPTIONAL
}

CellInfoSI-HCS-ECN0 ::=				SEQUENCE {
	cellIndividualOffset				CellIndividualOffset		 		DEFAULT 0,
	referenceTimeDifferenceToCell		ReferenceTimeDifferenceToCell		OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			primaryCPICH-Info					PrimaryCPICH-Info			OPTIONAL,
			primaryCPICH-TX-Power				PrimaryCPICH-TX-Power		OPTIONAL,
			readSFN-Indicator					BOOLEAN,
			tx-DiversityIndicator				BOOLEAN		
		},
		tdd									SEQUENCE {
			primaryCCPCH-Info					PrimaryCCPCH-Info,
			primaryCCPCH-TX-Power				PrimaryCCPCH-TX-Power		OPTIONAL,
			timeslotInfoList					TimeslotInfoList			OPTIONAL,
			readSFN-Indicator					BOOLEAN
		}
	},
	cellSelectionReselectionInfo		CellSelectReselectInfoSIB-11-12-HCS-ECN0	OPTIONAL
}

CellInfoSI-HCS-ECN0-LCR-r4 ::=		SEQUENCE {
	cellIndividualOffset				CellIndividualOffset		 		DEFAULT 0,
	referenceTimeDifferenceToCell		ReferenceTimeDifferenceToCell		OPTIONAL,
	primaryCCPCH-Info					PrimaryCCPCH-Info-LCR-r4,
	primaryCCPCH-TX-Power				PrimaryCCPCH-TX-Power				OPTIONAL,
	timeslotInfoList					TimeslotInfoList-LCR-r4				OPTIONAL,
	readSFN-Indicator					BOOLEAN,
	cellSelectionReselectionInfo		CellSelectReselectInfoSIB-11-12-HCS-ECN0	OPTIONAL
}

CellMeasuredResults ::=				SEQUENCE {
	cellIdentity						CellIdentity						OPTIONAL,
	-- dummy is not used in this version of the specification, it should
	-- not be sent and if received it should be ignored.
	dummy			SFN-SFN-ObsTimeDifference			OPTIONAL,
	cellSynchronisationInfo			CellSynchronisationInfo			OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			primaryCPICH-Info					PrimaryCPICH-Info,
			cpich-Ec-N0							CPICH-Ec-N0					OPTIONAL,
			cpich-RSCP							CPICH-RSCP					OPTIONAL,
			pathloss							Pathloss					OPTIONAL
		},
		tdd									SEQUENCE {
			cellParametersID					CellParametersID,
			proposedTGSN						TGSN						OPTIONAL,
			primaryCCPCH-RSCP					PrimaryCCPCH-RSCP			OPTIONAL,
			pathloss							Pathloss					OPTIONAL,
			timeslotISCP-List					TimeslotISCP-List			OPTIONAL
		}
	}
}

CellMeasurementEventResults ::=		CHOICE {
	fdd									SEQUENCE (SIZE (1..maxCellMeas)) OF
											PrimaryCPICH-Info,
	tdd									SEQUENCE (SIZE (1..maxCellMeas)) OF
											PrimaryCCPCH-Info
}

CellMeasurementEventResults-LCR-r4 ::=	SEQUENCE (SIZE (1..maxCellMeas)) OF
											PrimaryCCPCH-Info-LCR-r4

CellReportingQuantities ::=			SEQUENCE {
	-- dummy is not used in this version of the specification, it should
	-- not be sent and if received it should be ignored.
	dummy					SFN-SFN-OTD-Type,
	cellIdentity-reportingIndicator						BOOLEAN,
	cellSynchronisationInfoReportingIndicator			BOOLEAN,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			cpich-Ec-N0-reportingIndicator							BOOLEAN,
			cpich-RSCP-reportingIndicator							BOOLEAN,
			pathloss-reportingIndicator							BOOLEAN
		},
		tdd									SEQUENCE {
			timeslotISCP-reportingIndicator						BOOLEAN,
			proposedTGSN-ReportingRequired						BOOLEAN,
			primaryCCPCH-RSCP-reportingIndicator					BOOLEAN,
			pathloss-reportingIndicator							BOOLEAN
		}
	}
}

CellSelectReselectInfoSIB-11-12 ::=	SEQUENCE {
	q-Offset1S-N						Q-OffsetS-N							DEFAULT 0,
	q-Offset2S-N						Q-OffsetS-N							OPTIONAL,
	maxAllowedUL-TX-Power				MaxAllowedUL-TX-Power				OPTIONAL,
	hcs-NeighbouringCellInformation-RSCP		HCS-NeighbouringCellInformation-RSCP		OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			q-QualMin							Q-QualMin					OPTIONAL,
			q-RxlevMin							Q-RxlevMin					OPTIONAL
		},
		tdd									SEQUENCE {
			q-RxlevMin							Q-RxlevMin					OPTIONAL
		},
		gsm									SEQUENCE {
			q-RxlevMin							Q-RxlevMin					OPTIONAL
		}
	}
}

CellSelectReselectInfoSIB-11-12-RSCP ::=	SEQUENCE {
	q-OffsetS-N						Q-OffsetS-N						DEFAULT 0,
	maxAllowedUL-TX-Power				MaxAllowedUL-TX-Power				OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			q-QualMin							Q-QualMin					OPTIONAL,
			q-RxlevMin							Q-RxlevMin					OPTIONAL
		},
		tdd									SEQUENCE {
			q-RxlevMin							Q-RxlevMin					OPTIONAL
		},
		gsm									SEQUENCE {
			q-RxlevMin							Q-RxlevMin					OPTIONAL
		}
	}
}

CellSelectReselectInfoSIB-11-12-ECN0 ::=	SEQUENCE {
	q-Offset1S-N						Q-OffsetS-N						DEFAULT 0,
	q-Offset2S-N						Q-OffsetS-N						DEFAULT 0,
	maxAllowedUL-TX-Power				MaxAllowedUL-TX-Power				OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			q-QualMin							Q-QualMin					OPTIONAL,
			q-RxlevMin							Q-RxlevMin					OPTIONAL
		},
		tdd									SEQUENCE {
			q-RxlevMin							Q-RxlevMin					OPTIONAL
		},
		gsm									SEQUENCE {
			q-RxlevMin							Q-RxlevMin					OPTIONAL
		}
	}
}

CellSelectReselectInfoSIB-11-12-HCS-RSCP ::=	SEQUENCE {
	q-OffsetS-N						Q-OffsetS-N						DEFAULT 0,
	maxAllowedUL-TX-Power				MaxAllowedUL-TX-Power				OPTIONAL,
	hcs-NeighbouringCellInformation-RSCP		HCS-NeighbouringCellInformation-RSCP		OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			q-QualMin							Q-QualMin					OPTIONAL,
			q-RxlevMin							Q-RxlevMin					OPTIONAL
		},
		tdd									SEQUENCE {
			q-RxlevMin							Q-RxlevMin					OPTIONAL
		},
		gsm									SEQUENCE {
			q-RxlevMin							Q-RxlevMin					OPTIONAL
		}
	}
}

CellSelectReselectInfoSIB-11-12-HCS-ECN0 ::=	SEQUENCE {
	q-Offset1S-N						Q-OffsetS-N						DEFAULT 0,
	q-Offset2S-N						Q-OffsetS-N						DEFAULT 0,
	maxAllowedUL-TX-Power				MaxAllowedUL-TX-Power				OPTIONAL,
	hcs-NeighbouringCellInformation-ECN0		HCS-NeighbouringCellInformation-ECN0		OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			q-QualMin							Q-QualMin					OPTIONAL,
			q-RxlevMin							Q-RxlevMin					OPTIONAL
		},
		tdd									SEQUENCE {
			q-RxlevMin							Q-RxlevMin					OPTIONAL
		},
		gsm									SEQUENCE {
			q-RxlevMin							Q-RxlevMin					OPTIONAL
		}
	}
}

CellSelectReselectInfo-v590ext ::= SEQUENCE {
	deltaQrxlevmin					DeltaQrxlevmin					OPTIONAL,
	deltaQhcs						DeltaRSCP						OPTIONAL
}

CellSelectReselectInfoPCHFACH-v5b0ext ::= SEQUENCE {
	q-Hyst-l-S-PCH				Q-Hyst-S-Fine						OPTIONAL,
	q-Hyst-l-S-FACH				Q-Hyst-S-Fine						OPTIONAL,
	q-Hyst-2-S-PCH				Q-Hyst-S-Fine						OPTIONAL,
	q-Hyst-2-S-FACH				Q-Hyst-S-Fine						OPTIONAL,
	t-Reselection-S-PCH			T-Reselection-S						OPTIONAL,
	t-Reselection-S-FACH		T-Reselection-S-Fine				OPTIONAL
}

CellSelectReselectInfoTreselectionScaling-v5c0ext ::= SEQUENCE {
	-- For speed detection, the same HCS parameters are utilised
	non-HCS-t-CR-Max							T-CRMax									OPTIONAL,
	speedDependentScalingFactor					SpeedDependentScalingFactor				OPTIONAL,
	interFrequencyTreselectionScalingFactor		TreselectionScalingFactor				OPTIONAL,
	interRATTreselectionScalingFactor			TreselectionScalingFactor				OPTIONAL
}

CellsForInterFreqMeasList ::=		SEQUENCE (SIZE  (1..maxCellMeas)) OF
										InterFreqCellID
CellsForInterRATMeasList ::=			SEQUENCE (SIZE  (1..maxCellMeas)) OF
										InterRATCellID
CellsForIntraFreqMeasList ::=		SEQUENCE (SIZE  (1..maxCellMeas)) OF
										IntraFreqCellID

CellSynchronisationInfo ::=			SEQUENCE {
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			countC-SFN-Frame-difference			CountC-SFN-Frame-difference		OPTIONAL,
			tm									INTEGER(0..38399)	
		},
		tdd									SEQUENCE {
			countC-SFN-Frame-difference			CountC-SFN-Frame-difference		OPTIONAL
		}
	}							
}

CellToReport ::=					SEQUENCE {
	bsicReported						BSICReported
}

CellToReportList ::=				SEQUENCE (SIZE (1..maxCellMeas)) OF
										CellToReport

CodePhaseSearchWindow ::=			ENUMERATED {
										w1023, w1, w2, w3, w4, w6, w8,
										w12, w16, w24, w32, w48, w64,
										w96, w128, w192 }

CountC-SFN-Frame-difference ::= SEQUENCE {
	-- Actual value countC-SFN-High = IE value * 256
	countC-SFN-High					INTEGER(0..15),
	off								INTEGER(0..255)
}

-- SPARE: CPICH-Ec-No, Max = 49
-- Values above Max are spare
CPICH-Ec-N0 ::=						INTEGER (0..63)

-- SPARE: CPICH- RSCP, Max = 91
-- Values above Max are spare
CPICH-RSCP ::=						INTEGER (0..127)


DeltaPRC ::=						INTEGER (-127..127)

--Actual value DeltaQrxlevmin = IE value * 2
DeltaQrxlevmin ::= INTEGER (-2..-1)

DeltaRSCP ::= INTEGER (-5..-1)

DeltaRSCPPerCell ::= SEQUENCE {
	deltaRSCP						DeltaRSCP	OPTIONAL
}

-- Actual value DeltaRRC = IE value * 0.032
DeltaRRC ::=						INTEGER (-7..7)

DGPS-CorrectionSatInfo ::=			SEQUENCE {
	satID								SatID,
	iode								IODE,
	udre								UDRE,
	prc									PRC,
	rrc									RRC,
-- dummy1 and dummy2 are not used in this version of the specification and should be ignored.
	dummy1							DeltaPRC,
	dummy2							DeltaRRC,
	-- dummy3 and dummy4 are not used in this version of the specification. They should not
	-- be sent and if received they should be ignored.
	dummy3							DeltaPRC			OPTIONAL,
	dummy4							DeltaRRC			OPTIONAL
}

DGPS-CorrectionSatInfoList ::=		SEQUENCE (SIZE (1..maxSat)) OF
										DGPS-CorrectionSatInfo

DiffCorrectionStatus ::=			ENUMERATED {
										udre-1-0, udre-0-75, udre-0-5, udre-0-3,
										udre-0-2, udre-0-1, noData, invalidData }

DL-TransportChannelBLER ::=			INTEGER (0..63)

DopplerUncertainty ::=				ENUMERATED {
										hz12-5, hz25, hz50, hz100, hz200,
										spare3, spare2, spare1 }

EllipsoidPoint ::=					SEQUENCE {	
	latitudeSign		ENUMERATED { north, south },
	latitude			INTEGER (0..8388607),
	longitude			INTEGER (-8388608..8388607)
}


EllipsoidPointAltitude ::=			SEQUENCE {
	latitudeSign		ENUMERATED { north, south },
	latitude			INTEGER (0..8388607),
	longitude			INTEGER (-8388608..8388607),
	altitudeDirection	ENUMERATED {height, depth},
	altitude			INTEGER (0..32767)
}


EllipsoidPointAltitudeEllipsoide ::=	SEQUENCE {
	latitudeSign			ENUMERATED { north, south },
	latitude				INTEGER (0..8388607),
	longitude				INTEGER (-8388608..8388607),
	altitudeDirection		ENUMERATED {height, depth},
	altitude				INTEGER (0..32767),
	uncertaintySemiMajor	INTEGER (0..127),
	uncertaintySemiMinor	INTEGER (0..127),
	   -- Actual value orientationMajorAxis = IE value * 2
	orientationMajorAxis	INTEGER (0..89),
	uncertaintyAltitude		INTEGER (0..127),
	confidence				INTEGER (0..100)
}


EllipsoidPointUncertCircle ::=		SEQUENCE {
	latitudeSign			ENUMERATED { north, south },
	latitude				INTEGER (0..8388607),
	longitude				INTEGER (-8388608..8388607),
	uncertaintyCode			INTEGER (0..127)
}


EllipsoidPointUncertEllipse ::=		SEQUENCE {
	latitudeSign			ENUMERATED { north, south },
	latitude				INTEGER (0..8388607),
	longitude				INTEGER (-8388608..8388607),
	uncertaintySemiMajor	INTEGER (0..127),
	uncertaintySemiMinor	INTEGER (0..127),
	   -- Actual value orientationMajorAxis = IE value * 2
	orientationMajorAxis	INTEGER (0..89),
	confidence				INTEGER (0..100)
}


EnvironmentCharacterisation ::=		ENUMERATED {
										possibleHeavyMultipathNLOS,
										lightMultipathLOS,
										notDefined,
										spare }

Event1a ::=							SEQUENCE {
	triggeringCondition					TriggeringCondition2,
	reportingRange						ReportingRange,
	forbiddenAffectCellList				ForbiddenAffectCellList				OPTIONAL,
	w									W,
	reportDeactivationThreshold			ReportDeactivationThreshold,
	reportingAmount						ReportingAmount,
	reportingInterval					ReportingInterval
}

Event1a-r4 ::=						SEQUENCE {
	triggeringCondition					TriggeringCondition2,
	reportingRange						ReportingRange,
	forbiddenAffectCellList				ForbiddenAffectCellList-r4			OPTIONAL,
	w									W,
	reportDeactivationThreshold			ReportDeactivationThreshold,
	reportingAmount						ReportingAmount,
	reportingInterval					ReportingInterval
}

Event1a-LCR-r4 ::=					SEQUENCE {
	triggeringCondition					TriggeringCondition2,
	reportingRange						ReportingRange,
	forbiddenAffectCellList				ForbiddenAffectCellList-LCR-r4			OPTIONAL,
	w									W,
	reportDeactivationThreshold			ReportDeactivationThreshold,
	reportingAmount						ReportingAmount,
	reportingInterval					ReportingInterval
}

Event1b ::=							SEQUENCE {
	triggeringCondition					TriggeringCondition1,
	reportingRange						ReportingRange,
	forbiddenAffectCellList				ForbiddenAffectCellList				OPTIONAL,
	w									W
}

Event1b-r4 ::=						SEQUENCE {
	triggeringCondition					TriggeringCondition1,
	reportingRange						ReportingRange,
	forbiddenAffectCellList				ForbiddenAffectCellList-r4			OPTIONAL,
	w									W
}

Event1b-LCR-r4 ::=					SEQUENCE {
	triggeringCondition					TriggeringCondition1,
	reportingRange						ReportingRange,
	forbiddenAffectCellList				ForbiddenAffectCellList-LCR-r4			OPTIONAL,
	w									W
}

Event1c ::=							SEQUENCE {
	replacementActivationThreshold		ReplacementActivationThreshold,
	reportingAmount						ReportingAmount,
	reportingInterval					ReportingInterval
}

Event1e ::=						SEQUENCE {
	triggeringCondition					TriggeringCondition2,
	thresholdUsedFrequency				ThresholdUsedFrequency
}

Event1f ::=						SEQUENCE {
	triggeringCondition					TriggeringCondition1,
	thresholdUsedFrequency				ThresholdUsedFrequency
}

Event2a ::=							SEQUENCE {
	-- dummy is not used in this version of the specification and should be ignored
	dummy								Threshold,
	usedFreqW							W,
	hysteresis							HysteresisInterFreq,
	timeToTrigger						TimeToTrigger,
	reportingCellStatus					ReportingCellStatus					OPTIONAL,
	nonUsedFreqParameterList			NonUsedFreqParameterList			OPTIONAL
}

Event2b ::=							SEQUENCE {
	usedFreqThreshold					Threshold,
	usedFreqW							W,
	hysteresis							HysteresisInterFreq,
	timeToTrigger						TimeToTrigger,
	reportingCellStatus					ReportingCellStatus					OPTIONAL,
	nonUsedFreqParameterList			NonUsedFreqParameterList			OPTIONAL
}

Event2c ::=							SEQUENCE {
	hysteresis							HysteresisInterFreq,
	timeToTrigger						TimeToTrigger,
	reportingCellStatus					ReportingCellStatus					OPTIONAL,
	nonUsedFreqParameterList			NonUsedFreqParameterList			OPTIONAL
}

Event2d ::=							SEQUENCE {
	usedFreqThreshold					Threshold,
	usedFreqW							W,
	hysteresis							HysteresisInterFreq,
	timeToTrigger						TimeToTrigger,
	reportingCellStatus					ReportingCellStatus					OPTIONAL
}

Event2e ::=							SEQUENCE {
	hysteresis							HysteresisInterFreq,
	timeToTrigger						TimeToTrigger,
	reportingCellStatus					ReportingCellStatus					OPTIONAL,
	nonUsedFreqParameterList			NonUsedFreqParameterList			OPTIONAL
}

Event2f ::=							SEQUENCE {
	usedFreqThreshold					Threshold,
	usedFreqW							W,
	hysteresis							HysteresisInterFreq,
	timeToTrigger						TimeToTrigger,
	reportingCellStatus					ReportingCellStatus					OPTIONAL
}	

Event3a ::=							SEQUENCE {
	thresholdOwnSystem					Threshold,
	w									W,
	thresholdOtherSystem				Threshold,
	hysteresis							Hysteresis,
	timeToTrigger						TimeToTrigger,
	reportingCellStatus					ReportingCellStatus					OPTIONAL
}	

Event3b ::=							SEQUENCE {
	thresholdOtherSystem				Threshold,
	hysteresis							Hysteresis,
	timeToTrigger						TimeToTrigger,
	reportingCellStatus					ReportingCellStatus					OPTIONAL
	
}	

Event3c ::=							SEQUENCE {
	thresholdOtherSystem				Threshold,
	hysteresis							Hysteresis,
	timeToTrigger						TimeToTrigger,
	reportingCellStatus					ReportingCellStatus					OPTIONAL
}	

Event3d ::=							SEQUENCE {
	hysteresis							Hysteresis,
	timeToTrigger						TimeToTrigger,
	reportingCellStatus					ReportingCellStatus					OPTIONAL
}	

EventIDInterFreq ::=				ENUMERATED {
										e2a, e2b, e2c, e2d, e2e, e2f, spare2, spare1 }

EventIDInterRAT ::=					ENUMERATED {
										e3a, e3b, e3c, e3d }

EventIDIntraFreq ::=				ENUMERATED {
										e1a, e1b, e1c, e1d, e1e,
										e1f, e1g, e1h, e1i, spare7,
										spare6, spare5, spare4, spare3, spare2,
										spare1 }

EventResults ::=					CHOICE {
	intraFreqEventResults				IntraFreqEventResults,
	interFreqEventResults				InterFreqEventResults,
	interRATEventResults				InterRATEventResults,
	trafficVolumeEventResults			TrafficVolumeEventResults,
	qualityEventResults					QualityEventResults,
	ue-InternalEventResults				UE-InternalEventResults,
	ue-positioning-MeasurementEventResults			UE-Positioning-MeasurementEventResults,
	spare								NULL
}

ExtraDopplerInfo ::=				SEQUENCE {
	-- Actual value doppler1stOrder = IE value * 0.023
	doppler1stOrder						INTEGER (-42..21),
	dopplerUncertainty					DopplerUncertainty
}

FACH-MeasurementOccasionInfo ::=	SEQUENCE {
	fACH-meas-occasion-coeff			INTEGER (1..12)						OPTIONAL,
	inter-freq-FDD-meas-ind				BOOLEAN,
	-- inter-freq-TDD-meas-ind is for 3.84Mcps TDD. For 1.28Mcps TDD, the IE in
	-- FACH-MeasurementOccasionInfo-LCR-r4-ext is used.
	inter-freq-TDD-meas-ind				BOOLEAN,
	inter-RAT-meas-ind					SEQUENCE (SIZE (1..maxOtherRAT)) OF
											RAT-Type						OPTIONAL
}

FACH-MeasurementOccasionInfo-LCR-r4-ext ::=	SEQUENCE {
	inter-freq-TDD128-meas-ind					BOOLEAN
}

FilterCoefficient ::=				ENUMERATED {
										fc0, fc1, fc2, fc3, fc4, fc5, 
										fc6, fc7, fc8, fc9, fc11, fc13, 
										fc15, fc17, fc19, spare1 }

-- Actual value FineSFN-SFN = IE value * 0.0625
FineSFN-SFN ::=						INTEGER (0..15)

ForbiddenAffectCell ::=				CHOICE {
	fdd									PrimaryCPICH-Info,
	tdd									PrimaryCCPCH-Info
}

ForbiddenAffectCell-r4 ::=			CHOICE {
	fdd									PrimaryCPICH-Info,
	tdd									PrimaryCCPCH-Info-r4
}

ForbiddenAffectCell-LCR-r4 ::=		SEQUENCE {
	tdd									PrimaryCCPCH-Info-LCR-r4
}

ForbiddenAffectCellList ::=			SEQUENCE (SIZE (1..maxCellMeas)) OF
										ForbiddenAffectCell

ForbiddenAffectCellList-r4 ::=			SEQUENCE (SIZE (1..maxCellMeas)) OF
										ForbiddenAffectCell-r4

ForbiddenAffectCellList-LCR-r4 ::=	SEQUENCE (SIZE (1..maxCellMeas)) OF
										ForbiddenAffectCell-LCR-r4

FreqQualityEstimateQuantity-FDD ::= ENUMERATED {
										cpich-Ec-N0,
										cpich-RSCP }

FreqQualityEstimateQuantity-TDD ::= ENUMERATED {
										primaryCCPCH-RSCP }

GPS-MeasurementParam ::=			SEQUENCE {
	satelliteID							INTEGER (0..63),
	c-N0								INTEGER (0..63),
	doppler								INTEGER (-32768..32768),
	wholeGPS-Chips						INTEGER (0..1022),
	fractionalGPS-Chips					INTEGER (0..1023),
	multipathIndicator					MultipathIndicator,
	pseudorangeRMS-Error				INTEGER (0..63)
}

GPS-MeasurementParamList ::=		SEQUENCE (SIZE (1..maxSat)) OF
										GPS-MeasurementParam

GSM-CarrierRSSI ::=					BIT STRING (SIZE (6))


GSM-MeasuredResults ::= 			SEQUENCE {
	gsm-CarrierRSSI						GSM-CarrierRSSI						OPTIONAL,
	-- dummy is not used in this version of the specification, it should
	-- not be sent and if received it should be ignored.
	dummy								INTEGER (46..173)					OPTIONAL,
	bsicReported						BSICReported,
	-- dummy2 is not used in this version of the specification, it should
	-- not be sent and if received it should be ignored.
	dummy2								ObservedTimeDifferenceToGSM			OPTIONAL
}

GSM-MeasuredResultsList ::=			SEQUENCE (SIZE (1..maxReportedGSMCells)) OF
										GSM-MeasuredResults	

GPS-TOW-1msec ::=					INTEGER (0..604799999)

GPS-TOW-Assist ::=					SEQUENCE {
	satID								SatID,
	tlm-Message							BIT STRING (SIZE (14)),
	tlm-Reserved						BIT STRING (SIZE (2)),
	alert								BOOLEAN,
	antiSpoof							BOOLEAN
}

GPS-TOW-AssistList ::=				SEQUENCE (SIZE (1..maxSat)) OF
										GPS-TOW-Assist

HCS-CellReselectInformation-RSCP ::=		SEQUENCE {
	-- TABULAR: The default value for penaltyTime is "notUsed"
	-- Temporary offset is nested inside PenaltyTime-RSCP
	penaltyTime									PenaltyTime-RSCP
}

HCS-CellReselectInformation-ECN0 ::=		SEQUENCE {
	-- TABULAR: The default value for penaltyTime is "notUsed"
	-- Temporary offset is nested inside PenaltyTime-ECN0
	penaltyTime							PenaltyTime-ECN0
}

HCS-NeighbouringCellInformation-RSCP ::= SEQUENCE {
	hcs-PRIO							HCS-PRIO							DEFAULT 0,
	q-HCS								Q-HCS								DEFAULT 0,
	hcs-CellReselectInformation			HCS-CellReselectInformation-RSCP
}

HCS-NeighbouringCellInformation-ECN0 ::= SEQUENCE {
	hcs-PRIO							HCS-PRIO							DEFAULT 0,
	q-HCS								Q-HCS								DEFAULT 0,
	hcs-CellReselectInformation			HCS-CellReselectInformation-ECN0
}

HCS-PRIO ::=						INTEGER (0..7)

HCS-ServingCellInformation ::=		SEQUENCE {
	hcs-PRIO							HCS-PRIO							DEFAULT 0,
	q-HCS								Q-HCS								DEFAULT 0,
	t-CR-Max							T-CRMax								OPTIONAL
}

-- Actual value Hysteresis = IE value * 0.5
Hysteresis ::=						INTEGER (0..15)

-- Actual value HysteresisInterFreq = IE value * 0.5
HysteresisInterFreq ::=				INTEGER (0..29)

InterFreqCell ::=					SEQUENCE {
	frequencyInfo						FrequencyInfo,
	nonFreqRelatedEventResults			CellMeasurementEventResults
}

InterFreqCell-LCR-r4 ::=			SEQUENCE {
	frequencyInfo						FrequencyInfo,
	nonFreqRelatedEventResults			CellMeasurementEventResults-LCR-r4
}

InterFreqCellID ::=					INTEGER (0..maxCellMeas-1)

InterFreqCellInfoList ::=			SEQUENCE {
	removedInterFreqCellList			RemovedInterFreqCellList			OPTIONAL,
	newInterFreqCellList				NewInterFreqCellList				OPTIONAL,
	cellsForInterFreqMeasList			CellsForInterFreqMeasList			OPTIONAL
}

InterFreqCellInfoList-r4 ::=		SEQUENCE {
	removedInterFreqCellList			RemovedInterFreqCellList			OPTIONAL,
	newInterFreqCellList				NewInterFreqCellList-r4				OPTIONAL,
	cellsForInterFreqMeasList			CellsForInterFreqMeasList			OPTIONAL
}

InterFreqCellInfoSI-List-RSCP ::=		SEQUENCE {
	removedInterFreqCellList			RemovedInterFreqCellList			OPTIONAL,
	newInterFreqCellList				NewInterFreqCellSI-List-RSCP		OPTIONAL
}

InterFreqCellInfoSI-List-ECN0 ::=		SEQUENCE {
	removedInterFreqCellList			RemovedInterFreqCellList			OPTIONAL,
	newInterFreqCellList				NewInterFreqCellSI-List-ECN0		OPTIONAL
}

InterFreqCellInfoSI-List-HCS-RSCP ::=		SEQUENCE {
	removedInterFreqCellList			RemovedInterFreqCellList			OPTIONAL,
	newInterFreqCellList				NewInterFreqCellSI-List-HCS-RSCP	OPTIONAL
}
InterFreqCellInfoSI-List-HCS-ECN0 ::=		SEQUENCE {
	removedInterFreqCellList			RemovedInterFreqCellList			OPTIONAL,
	newInterFreqCellList				NewInterFreqCellSI-List-HCS-ECN0	OPTIONAL
}

InterFreqCellInfoSI-List-RSCP-LCR ::=		SEQUENCE {
	removedInterFreqCellList			RemovedInterFreqCellList			OPTIONAL,
	newInterFreqCellList				NewInterFreqCellSI-List-RSCP-LCR-r4		OPTIONAL
}

InterFreqCellInfoSI-List-ECN0-LCR ::=		SEQUENCE {
	removedInterFreqCellList			RemovedInterFreqCellList			OPTIONAL,
	newInterFreqCellList				NewInterFreqCellSI-List-ECN0-LCR-r4		OPTIONAL
}

InterFreqCellInfoSI-List-HCS-RSCP-LCR ::=		SEQUENCE {
	removedInterFreqCellList			RemovedInterFreqCellList			OPTIONAL,
	newInterFreqCellList				NewInterFreqCellSI-List-HCS-RSCP-LCR-r4	OPTIONAL
}
InterFreqCellInfoSI-List-HCS-ECN0-LCR ::=		SEQUENCE {
	removedInterFreqCellList			RemovedInterFreqCellList			OPTIONAL,
	newInterFreqCellList				NewInterFreqCellSI-List-HCS-ECN0-LCR-r4	OPTIONAL
}

InterFreqCellList ::=				SEQUENCE (SIZE (1..maxFreq)) OF
										InterFreqCell

InterFreqCellList-LCR-r4-ext ::=	SEQUENCE (SIZE (1..maxFreq)) OF
										InterFreqCell-LCR-r4

InterFreqCellMeasuredResultsList ::= SEQUENCE (SIZE (1..maxCellMeas)) OF
										CellMeasuredResults

InterFreqEvent ::=					CHOICE {
	event2a								Event2a,
	event2b								Event2b,
	event2c								Event2c,
	event2d								Event2d,
	event2e								Event2e,
	event2f								Event2f
}

InterFreqEventList ::=				SEQUENCE (SIZE (1..maxMeasEvent)) OF
										InterFreqEvent

--Following IE shall be used regardless of CPICH RSCP(FDD) or Primary CCPCH RSCP(TDD)
--The order of the list corresponds to the order of the cells in InterFrequencyMeasuredResultsList
--The IE is only used for measured results and not for additional measured results.
InterFrequencyMeasuredResultsList-v590ext ::= SEQUENCE (SIZE (1..maxCellMeas)) OF
												DeltaRSCPPerCell

Inter-FreqEventCriteria-v590ext ::= SEQUENCE {
	threholdUsedFrequency-delta				DeltaRSCP,
	threholdNonUsedFrequency-deltaList		ThreholdNonUsedFrequency-deltaList  	OPTIONAL
}

--The order of the list corresponds to the order of the events in Inter-FreqEventList
Inter-FreqEventCriteriaList-v590ext ::= SEQUENCE (SIZE (1..maxMeasEvent)) OF
											Inter-FreqEventCriteria-v590ext

--The order of the list corresponds to the order of relevant events in Intra-FreqEventCriteriaList
--i.e. the first element of the list corresponds to the first occurance of event 1e, 1f, 1h, 1i,
--the second element of the list corresponds to the second occurance of event 1e, 1f, 1h, 1i 
Intra-FreqEventCriteriaList-v590ext ::= SEQUENCE (SIZE (1..maxMeasEvent)) OF
											DeltaRSCP

--Following IE shall be used regardless of CPICH RSCP(FDD) or Primary CCPCH RSCP(TDD)
--The order of the list corresponds to the order of the cells in IntraFrequencyMeasuredResultsList
--The IE is only used for measured results and not for additional measured results.
IntraFrequencyMeasuredResultsList-v590ext ::= SEQUENCE (SIZE (1..maxCellMeas)) OF
												DeltaRSCPPerCell

IntraFreqReportingCriteria-1b-r5 ::= SEQUENCE {
	periodicReportingInfo-1b			PeriodicReportingInfo-1b
}

PeriodicReportingInfo-1b ::= SEQUENCE {
	reportingAmount						ReportingAmount,
	reportingInterval					ReportingInterval
}

InterFreqEventResults ::=			SEQUENCE {
	eventID								EventIDInterFreq,
	interFreqCellList					InterFreqCellList					OPTIONAL
}

InterFreqEventResults-LCR-r4-ext ::=	SEQUENCE {
	eventID								EventIDInterFreq,
	interFreqCellList					InterFreqCellList-LCR-r4-ext		OPTIONAL
}

InterFreqMeasQuantity ::=			SEQUENCE {
	reportingCriteria					CHOICE {
		intraFreqReportingCriteria			SEQUENCE {
			intraFreqMeasQuantity				IntraFreqMeasQuantity
		},
		interFreqReportingCriteria			SEQUENCE {
			filterCoefficient					FilterCoefficient			DEFAULT fc0,
			modeSpecificInfo					CHOICE {
				fdd									SEQUENCE {
					freqQualityEstimateQuantity-FDD		FreqQualityEstimateQuantity-FDD
				},
				tdd									SEQUENCE {
					freqQualityEstimateQuantity-TDD		FreqQualityEstimateQuantity-TDD
				}
			}
		}
	}
}

InterFreqMeasuredResults ::=		SEQUENCE {
	frequencyInfo						FrequencyInfo						OPTIONAL,
	utra-CarrierRSSI					UTRA-CarrierRSSI					OPTIONAL,
	interFreqCellMeasuredResultsList	InterFreqCellMeasuredResultsList	OPTIONAL
}

InterFreqMeasuredResultsList ::=	SEQUENCE (SIZE (1..maxFreq)) OF
										InterFreqMeasuredResults


InterFreqMeasurementSysInfo-RSCP ::=	SEQUENCE {
	interFreqCellInfoSI-List				InterFreqCellInfoSI-List-RSCP		OPTIONAL
}

InterFreqMeasurementSysInfo-ECN0 ::=		SEQUENCE {
	interFreqCellInfoSI-List			InterFreqCellInfoSI-List-ECN0		OPTIONAL
}

InterFreqMeasurementSysInfo-HCS-RSCP ::=		SEQUENCE {
	interFreqCellInfoSI-List			InterFreqCellInfoSI-List-HCS-RSCP	OPTIONAL
}

InterFreqMeasurementSysInfo-HCS-ECN0 ::=		SEQUENCE {
	interFreqCellInfoSI-List			InterFreqCellInfoSI-List-HCS-ECN0	OPTIONAL
}

InterFreqMeasurementSysInfo-RSCP-LCR-r4 ::=	SEQUENCE {
	interFreqCellInfoSI-List				InterFreqCellInfoSI-List-RSCP-LCR		OPTIONAL
}

InterFreqMeasurementSysInfo-ECN0-LCR-r4 ::=		SEQUENCE {
	interFreqCellInfoSI-List			InterFreqCellInfoSI-List-ECN0-LCR		OPTIONAL
}

InterFreqMeasurementSysInfo-HCS-RSCP-LCR-r4 ::=		SEQUENCE {
	interFreqCellInfoSI-List			InterFreqCellInfoSI-List-HCS-RSCP-LCR	OPTIONAL
}

InterFreqMeasurementSysInfo-HCS-ECN0-LCR-r4 ::=		SEQUENCE {
	interFreqCellInfoSI-List			InterFreqCellInfoSI-List-HCS-ECN0-LCR	OPTIONAL
}

InterFreqRACHRepCellsList ::=			SEQUENCE (SIZE (1..maxFreq)) OF
InterFreqCellID

InterFreqRACHReportingInfo ::= SEQUENCE {
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			interFreqRepQuantityRACH-FDD		InterFreqRepQuantityRACH-FDD
		},
		tdd									SEQUENCE {
			interFreqRepQuantityRACH-TDDList	InterFreqRepQuantityRACH-TDDList
		},
	interFreqRACHReportingThreshold		Threshold,
	maxReportedCellsOnRACHinterFreq		MaxReportedCellsOnRACHinterFreq
	}
}

InterFreqReportCriteria ::=			CHOICE {
	intraFreqReportingCriteria			IntraFreqReportingCriteria,
	interFreqReportingCriteria			InterFreqReportingCriteria,
	periodicalReportingCriteria			PeriodicalWithReportingCellStatus,
	noReporting							ReportingCellStatusOpt
}

InterFreqReportCriteria-r4 ::=		CHOICE {
	intraFreqReportingCriteria			IntraFreqReportingCriteria-r4,
	interFreqReportingCriteria			InterFreqReportingCriteria,
	periodicalReportingCriteria			PeriodicalWithReportingCellStatus,
	noReporting							ReportingCellStatusOpt
}

InterFreqReportingCriteria ::=		SEQUENCE {
	interFreqEventList					InterFreqEventList					OPTIONAL
}

InterFreqReportingQuantity ::=		SEQUENCE {
	utra-Carrier-RSSI					BOOLEAN,
	frequencyQualityEstimate			BOOLEAN,
	nonFreqRelatedQuantities			CellReportingQuantities
}

InterFreqRepQuantityRACH-FDD ::=	ENUMERATED {
										cpich-EcN0, cpich-RSCP }

InterFreqRepQuantityRACH-TDD ::=	ENUMERATED {
										timeslotISCP,
										primaryCCPCH-RSCP }

InterFreqRepQuantityRACH-TDDList ::= SEQUENCE (SIZE (1..2)) OF
										InterFreqRepQuantityRACH-TDD

InterFrequencyMeasurement ::=		SEQUENCE {
	interFreqCellInfoList				InterFreqCellInfoList,
	interFreqMeasQuantity				InterFreqMeasQuantity				OPTIONAL,
	interFreqReportingQuantity			InterFreqReportingQuantity			OPTIONAL,
	measurementValidity					MeasurementValidity					OPTIONAL,
	interFreqSetUpdate					UE-AutonomousUpdateMode				OPTIONAL,
	reportCriteria						InterFreqReportCriteria
}

InterFrequencyMeasurement-r4 ::=	SEQUENCE {
	interFreqCellInfoList				InterFreqCellInfoList-r4,
	interFreqMeasQuantity				InterFreqMeasQuantity				OPTIONAL,
	interFreqReportingQuantity			InterFreqReportingQuantity			OPTIONAL,
	measurementValidity					MeasurementValidity					OPTIONAL,
	interFreqSetUpdate					UE-AutonomousUpdateMode				OPTIONAL,
	reportCriteria						InterFreqReportCriteria-r4
}

InterRAT-TargetCellDescription ::=	SEQUENCE {
	technologySpecificInfo				CHOICE {
		gsm									SEQUENCE {
			bsic								BSIC,
			frequency-band						Frequency-Band,
			bcch-ARFCN							BCCH-ARFCN,
			ncMode								NC-Mode				OPTIONAL
		},
		is-2000								NULL,
		spare2								NULL,
		spare1								NULL
	}
}

InterRATCellID ::=				INTEGER (0..maxCellMeas-1)

InterRATCellInfoIndication ::=		INTEGER (0..3)

InterRATCellInfoList ::=			SEQUENCE {
	removedInterRATCellList			RemovedInterRATCellList,
	-- NOTE: Future revisions of dedicated messages including IE newInterRATCellList
	-- should use a corrected version of this IE
	newInterRATCellList				NewInterRATCellList,
	cellsForInterRATMeasList			CellsForInterRATMeasList			OPTIONAL
}

InterRATCellInfoList-B ::=			SEQUENCE {
	removedInterRATCellList			RemovedInterRATCellList,
	-- NOTE: IE newInterRATCellList should be optional.  However, system information
	-- does not support message versions.  Hence, this can not be corrected
	newInterRATCellList				NewInterRATCellList-B
}

InterRATCellInfoList-r4 ::=			SEQUENCE {
	removedInterRATCellList					RemovedInterRATCellList,
	newInterRATCellList						NewInterRATCellList					OPTIONAL,
	cellsForInterRATMeasList				CellsForInterRATMeasList			OPTIONAL
}

InterRATCellIndividualOffset ::=			INTEGER (-50..50)

InterRATEvent ::=				CHOICE {
	event3a								Event3a,
	event3b								Event3b,
	event3c								Event3c,
	event3d								Event3d
}

InterRATEventList ::=			SEQUENCE (SIZE (1..maxMeasEvent)) OF
										InterRATEvent

InterRATEventResults ::=			SEQUENCE {
	eventID								EventIDInterRAT,
	cellToReportList					CellToReportList
}

InterRATInfo ::=					ENUMERATED {
										gsm }

InterRATInfo-r6 ::=					SEQUENCE {
	rat									InterRATInfo,
	gsm-TargetCellInfoList				GSM-TargetCellInfoList			OPTIONAL
}

InterRATMeasQuantity ::=				SEQUENCE {
	measQuantityUTRAN-QualityEstimate		IntraFreqMeasQuantity			OPTIONAL,
	ratSpecificInfo						CHOICE {
		gsm										SEQUENCE {
			measurementQuantity						MeasurementQuantityGSM,
			filterCoefficient						FilterCoefficient		DEFAULT fc0,
			bsic-VerificationRequired				BSIC-VerificationRequired
		},
		is-2000									SEQUENCE {
			tadd-EcIo								INTEGER (0..63),
			tcomp-EcIo								INTEGER (0..15),
			softSlope								INTEGER (0..63)			OPTIONAL,
			addIntercept							INTEGER (0..63)			OPTIONAL
		}
	}	
}

InterRATMeasuredResults ::=		CHOICE {
	gsm									GSM-MeasuredResultsList,
	spare								NULL
}

InterRATMeasuredResultsList ::= SEQUENCE (SIZE (1..maxOtherRAT-16)) OF
										InterRATMeasuredResults

InterRATMeasurement ::=			SEQUENCE {
	interRATCellInfoList				InterRATCellInfoList				OPTIONAL,
	interRATMeasQuantity				InterRATMeasQuantity				OPTIONAL,
	interRATReportingQuantity			InterRATReportingQuantity		OPTIONAL,
	reportCriteria						InterRATReportCriteria
}

InterRATMeasurement-r4 ::=			SEQUENCE {
	interRATCellInfoList				InterRATCellInfoList-r4				OPTIONAL,
	interRATMeasQuantity				InterRATMeasQuantity				OPTIONAL,
	interRATReportingQuantity			InterRATReportingQuantity		OPTIONAL,
	reportCriteria						InterRATReportCriteria
}

InterRATMeasurementSysInfo ::=	SEQUENCE {
	interRATCellInfoList				InterRATCellInfoList				OPTIONAL
}

InterRATMeasurementSysInfo-B ::=	SEQUENCE {
	interRATCellInfoList				InterRATCellInfoList-B			OPTIONAL
}

InterRATReportCriteria ::=		CHOICE {
	interRATReportingCriteria			InterRATReportingCriteria,
	periodicalReportingCriteria			PeriodicalWithReportingCellStatus,
	noReporting							ReportingCellStatusOpt
}			

InterRATReportingCriteria ::= 	SEQUENCE {
	interRATEventList				InterRATEventList				OPTIONAL
}

InterRATReportingQuantity ::=	SEQUENCE {
	utran-EstimatedQuality				BOOLEAN,
	ratSpecificInfo					CHOICE {
		gsm									SEQUENCE {
			-- dummy and dummy2 are not used in this version of the specification
			-- and when received they should be ignored.
			dummy								BOOLEAN,
			dummy2								BOOLEAN,
			gsm-Carrier-RSSI					BOOLEAN
		}
	}
}

IntraFreqCellID ::=					INTEGER (0..maxCellMeas-1)

IntraFreqCellInfoList ::=			SEQUENCE {
	removedIntraFreqCellList			RemovedIntraFreqCellList			OPTIONAL,
	newIntraFreqCellList				NewIntraFreqCellList				OPTIONAL,
	cellsForIntraFreqMeasList			CellsForIntraFreqMeasList			OPTIONAL
}

IntraFreqCellInfoList-r4 ::=		SEQUENCE {
	removedIntraFreqCellList			RemovedIntraFreqCellList			OPTIONAL,
	newIntraFreqCellList				NewIntraFreqCellList-r4				OPTIONAL,
	cellsForIntraFreqMeasList			CellsForIntraFreqMeasList			OPTIONAL
}

IntraFreqCellInfoSI-List-RSCP ::=	SEQUENCE {
	removedIntraFreqCellList			RemovedIntraFreqCellList			OPTIONAL,
	newIntraFreqCellList				NewIntraFreqCellSI-List-RSCP
}

IntraFreqCellInfoSI-List-ECN0 ::=		SEQUENCE {
	removedIntraFreqCellList			RemovedIntraFreqCellList			OPTIONAL,
	newIntraFreqCellList				NewIntraFreqCellSI-List-ECN0
}

IntraFreqCellInfoSI-List-HCS-RSCP ::=		SEQUENCE {
	removedIntraFreqCellList			RemovedIntraFreqCellList			OPTIONAL,
	newIntraFreqCellList				NewIntraFreqCellSI-List-HCS-RSCP
}

IntraFreqCellInfoSI-List-HCS-ECN0 ::=		SEQUENCE {
	removedIntraFreqCellList			RemovedIntraFreqCellList			OPTIONAL,
	newIntraFreqCellList				NewIntraFreqCellSI-List-HCS-ECN0
}

IntraFreqCellInfoSI-List-RSCP-LCR-r4 ::=	SEQUENCE {
	removedIntraFreqCellList			RemovedIntraFreqCellList			OPTIONAL,
	newIntraFreqCellList				NewIntraFreqCellSI-List-RSCP-LCR-r4
}

IntraFreqCellInfoSI-List-ECN0-LCR-r4 ::=		SEQUENCE {
	removedIntraFreqCellList			RemovedIntraFreqCellList			OPTIONAL,
	newIntraFreqCellList				NewIntraFreqCellSI-List-ECN0-LCR-r4
}

IntraFreqCellInfoSI-List-HCS-RSCP-LCR-r4 ::=		SEQUENCE {
	removedIntraFreqCellList			RemovedIntraFreqCellList			OPTIONAL,
	newIntraFreqCellList				NewIntraFreqCellSI-List-HCS-RSCP-LCR-r4
}

IntraFreqCellInfoSI-List-HCS-ECN0-LCR-r4 ::=		SEQUENCE {
	removedIntraFreqCellList			RemovedIntraFreqCellList			OPTIONAL,
	newIntraFreqCellList				NewIntraFreqCellSI-List-HCS-ECN0-LCR-r4
}

IntraFreqEvent ::=					CHOICE {
	e1a									Event1a,
	e1b									Event1b,
	e1c									Event1c,
	e1d									NULL,
	e1e									Event1e,
	e1f									Event1f,
	e1g									NULL,
	e1h									ThresholdUsedFrequency,
	e1i									ThresholdUsedFrequency
}

IntraFreqEvent-r4 ::=				CHOICE {
	e1a									Event1a-r4,
	e1b									Event1b-r4,
	e1c									Event1c,
	e1d									NULL,
	e1e									Event1e,
	e1f									Event1f,
	e1g									NULL,
	e1h									ThresholdUsedFrequency,
	e1i									ThresholdUsedFrequency
}

IntraFreqEvent-LCR-r4 ::=			CHOICE {
	e1a									Event1a-LCR-r4,
	e1b									Event1b-LCR-r4,
	e1c									Event1c,
	e1d									NULL,
	e1e									Event1e,
	e1f									Event1f,
	e1g									NULL,
	e1h									ThresholdUsedFrequency,
	e1i									ThresholdUsedFrequency
}

IntraFreqEvent-1d-r5 ::=		SEQUENCE {
	triggeringCondition					TriggeringCondition2	OPTIONAL,
	useCIO								BOOLEAN					OPTIONAL
}

IntraFreqEventCriteria ::=			SEQUENCE {
	event								IntraFreqEvent,
	hysteresis							Hysteresis,
	timeToTrigger						TimeToTrigger,
	reportingCellStatus					ReportingCellStatus					OPTIONAL
}

IntraFreqEventCriteria-r4 ::=		SEQUENCE {
	event								IntraFreqEvent-r4,
	hysteresis							Hysteresis,
	timeToTrigger						TimeToTrigger,
	reportingCellStatus					ReportingCellStatus					OPTIONAL
}

IntraFreqEventCriteria-LCR-r4 ::=	SEQUENCE {
	event								IntraFreqEvent-LCR-r4,
	hysteresis							Hysteresis,
	timeToTrigger						TimeToTrigger,
	reportingCellStatus					ReportingCellStatus					OPTIONAL
}

IntraFreqEventCriteriaList ::=		SEQUENCE (SIZE (1..maxMeasEvent)) OF
										IntraFreqEventCriteria

IntraFreqEventCriteriaList-r4 ::=	SEQUENCE (SIZE (1..maxMeasEvent)) OF
										IntraFreqEventCriteria-r4

IntraFreqEventCriteriaList-LCR-r4 ::=	SEQUENCE (SIZE (1..maxMeasEvent)) OF
										IntraFreqEventCriteria-LCR-r4

IntraFreqEventResults ::=			SEQUENCE {
	eventID								EventIDIntraFreq,
	cellMeasurementEventResults			CellMeasurementEventResults
}

IntraFreqMeasQuantity ::=			SEQUENCE {
	filterCoefficient					FilterCoefficient					DEFAULT fc0,
	modeSpecificInfo 					CHOICE {
		fdd								SEQUENCE {
			intraFreqMeasQuantity-FDD		IntraFreqMeasQuantity-FDD
		},
		tdd								SEQUENCE {
			intraFreqMeasQuantity-TDDList	IntraFreqMeasQuantity-TDDList
		}
	}
}

-- If IntraFreqMeasQuantity-FDD is used in InterRATMeasQuantity, then only 
-- cpich-Ec-N0 and cpich-RSCP are allowed.
-- dummy is not used in this version of the specification, it should
-- not be sent and if received it should be ignored.
IntraFreqMeasQuantity-FDD ::=		ENUMERATED {
										cpich-Ec-N0,
										cpich-RSCP,
										pathloss,
										dummy }

-- dummy is not used in this version of the specification, it should
-- not be sent and if received it should be ignored.
IntraFreqMeasQuantity-TDD ::=		ENUMERATED {
										primaryCCPCH-RSCP,
										pathloss,
										timeslotISCP,
										dummy }

IntraFreqMeasQuantity-TDDList ::=	SEQUENCE (SIZE (1..4)) OF
										IntraFreqMeasQuantity-TDD

IntraFreqMeasuredResultsList ::=	SEQUENCE (SIZE (1..maxCellMeas)) OF
										CellMeasuredResults

IntraFreqMeasurementSysInfo-RSCP ::=	SEQUENCE {
	intraFreqMeasurementID				MeasurementIdentity			DEFAULT 1,
	intraFreqCellInfoSI-List			IntraFreqCellInfoSI-List-RSCP		OPTIONAL,
	intraFreqMeasQuantity				IntraFreqMeasQuantity				OPTIONAL,
	intraFreqReportingQuantityForRACH	IntraFreqReportingQuantityForRACH	OPTIONAL,
	maxReportedCellsOnRACH				MaxReportedCellsOnRACH				OPTIONAL,
	reportingInfoForCellDCH				ReportingInfoForCellDCH				OPTIONAL
}

IntraFreqMeasurementSysInfo-ECN0 ::=		SEQUENCE {
	intraFreqMeasurementID				MeasurementIdentity			DEFAULT 1,
	intraFreqCellInfoSI-List			IntraFreqCellInfoSI-List-ECN0		OPTIONAL,
	intraFreqMeasQuantity				IntraFreqMeasQuantity				OPTIONAL,
	intraFreqReportingQuantityForRACH	IntraFreqReportingQuantityForRACH	OPTIONAL,
	maxReportedCellsOnRACH				MaxReportedCellsOnRACH				OPTIONAL,
	reportingInfoForCellDCH				ReportingInfoForCellDCH				OPTIONAL
}

IntraFreqMeasurementSysInfo-HCS-RSCP ::=	SEQUENCE {
	intraFreqMeasurementID				MeasurementIdentity			DEFAULT 1,
	intraFreqCellInfoSI-List			IntraFreqCellInfoSI-List-HCS-RSCP	OPTIONAL,
	intraFreqMeasQuantity				IntraFreqMeasQuantity				OPTIONAL,
	intraFreqReportingQuantityForRACH	IntraFreqReportingQuantityForRACH	OPTIONAL,
	maxReportedCellsOnRACH				MaxReportedCellsOnRACH				OPTIONAL,
	reportingInfoForCellDCH				ReportingInfoForCellDCH				OPTIONAL
}

IntraFreqMeasurementSysInfo-HCS-ECN0 ::=	SEQUENCE {
	intraFreqMeasurementID				MeasurementIdentity			DEFAULT 1,
	intraFreqCellInfoSI-List			IntraFreqCellInfoSI-List-HCS-ECN0	OPTIONAL,
	intraFreqMeasQuantity				IntraFreqMeasQuantity				OPTIONAL,
	intraFreqReportingQuantityForRACH	IntraFreqReportingQuantityForRACH	OPTIONAL,
	maxReportedCellsOnRACH				MaxReportedCellsOnRACH				OPTIONAL,
	reportingInfoForCellDCH				ReportingInfoForCellDCH				OPTIONAL
}

IntraFreqMeasurementSysInfo-RSCP-LCR-r4 ::=	SEQUENCE {
	intraFreqMeasurementID				MeasurementIdentity			DEFAULT 1,
	intraFreqCellInfoSI-List			IntraFreqCellInfoSI-List-RSCP-LCR-r4	OPTIONAL,
	intraFreqMeasQuantity				IntraFreqMeasQuantity				OPTIONAL,
	intraFreqReportingQuantityForRACH	IntraFreqReportingQuantityForRACH	OPTIONAL,
	maxReportedCellsOnRACH				MaxReportedCellsOnRACH				OPTIONAL,
	reportingInfoForCellDCH				ReportingInfoForCellDCH-LCR-r4		OPTIONAL
}

IntraFreqMeasurementSysInfo-ECN0-LCR-r4 ::=		SEQUENCE {
	intraFreqMeasurementID				MeasurementIdentity			DEFAULT 1,
	intraFreqCellInfoSI-List			IntraFreqCellInfoSI-List-ECN0-LCR-r4	OPTIONAL,
	intraFreqMeasQuantity				IntraFreqMeasQuantity				OPTIONAL,
	intraFreqReportingQuantityForRACH	IntraFreqReportingQuantityForRACH	OPTIONAL,
	maxReportedCellsOnRACH				MaxReportedCellsOnRACH				OPTIONAL,
	reportingInfoForCellDCH				ReportingInfoForCellDCH-LCR-r4		OPTIONAL
}

IntraFreqMeasurementSysInfo-HCS-RSCP-LCR-r4 ::=	SEQUENCE {
	intraFreqMeasurementID				MeasurementIdentity			DEFAULT 1,
	intraFreqCellInfoSI-List			IntraFreqCellInfoSI-List-HCS-RSCP-LCR-r4	OPTIONAL,
	intraFreqMeasQuantity				IntraFreqMeasQuantity				OPTIONAL,
	intraFreqReportingQuantityForRACH	IntraFreqReportingQuantityForRACH	OPTIONAL,
	maxReportedCellsOnRACH				MaxReportedCellsOnRACH				OPTIONAL,
	reportingInfoForCellDCH				ReportingInfoForCellDCH-LCR-r4		OPTIONAL
}

IntraFreqMeasurementSysInfo-HCS-ECN0-LCR-r4 ::=	SEQUENCE {
	intraFreqMeasurementID				MeasurementIdentity			DEFAULT 1,
	intraFreqCellInfoSI-List			IntraFreqCellInfoSI-List-HCS-ECN0-LCR-r4	OPTIONAL,
	intraFreqMeasQuantity				IntraFreqMeasQuantity				OPTIONAL,
	intraFreqReportingQuantityForRACH	IntraFreqReportingQuantityForRACH	OPTIONAL,
	maxReportedCellsOnRACH				MaxReportedCellsOnRACH				OPTIONAL,
	reportingInfoForCellDCH				ReportingInfoForCellDCH-LCR-r4		OPTIONAL
}

IntraFreqReportCriteria ::=			CHOICE {
	intraFreqReportingCriteria			IntraFreqReportingCriteria,
	periodicalReportingCriteria			PeriodicalWithReportingCellStatus,
	noReporting							ReportingCellStatusOpt
}

IntraFreqReportCriteria-r4 ::=		CHOICE {
	intraFreqReportingCriteria			IntraFreqReportingCriteria-r4,
	periodicalReportingCriteria			PeriodicalWithReportingCellStatus,
	noReporting							ReportingCellStatusOpt
}

IntraFreqReportingCriteria ::=		SEQUENCE {
	eventCriteriaList					IntraFreqEventCriteriaList		OPTIONAL
}

IntraFreqReportingCriteria-r4 ::=	SEQUENCE {
	eventCriteriaList					IntraFreqEventCriteriaList-r4	OPTIONAL
}

IntraFreqReportingCriteria-LCR-r4 ::=	SEQUENCE {
	eventCriteriaList					IntraFreqEventCriteriaList-LCR-r4	OPTIONAL
}

IntraFreqReportingQuantity ::=		SEQUENCE {
	activeSetReportingQuantities		CellReportingQuantities,
	monitoredSetReportingQuantities		CellReportingQuantities,
	detectedSetReportingQuantities		CellReportingQuantities				OPTIONAL
}

IntraFreqReportingQuantityForRACH ::= SEQUENCE {
	sfn-SFN-OTD-Type					SFN-SFN-OTD-Type,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			intraFreqRepQuantityRACH-FDD		IntraFreqRepQuantityRACH-FDD
		},
		tdd									SEQUENCE {
			intraFreqRepQuantityRACH-TDDList	IntraFreqRepQuantityRACH-TDDList
		}
	}
}

IntraFreqRepQuantityRACH-FDD ::=	ENUMERATED {
										cpich-EcN0, cpich-RSCP, 
										pathloss, noReport }

IntraFreqRepQuantityRACH-TDD ::=	ENUMERATED {
										timeslotISCP,
										primaryCCPCH-RSCP,
										noReport }

IntraFreqRepQuantityRACH-TDDList ::= SEQUENCE (SIZE (1..2)) OF
										IntraFreqRepQuantityRACH-TDD

IntraFrequencyMeasurement ::=		SEQUENCE {
	intraFreqCellInfoList				IntraFreqCellInfoList				OPTIONAL,
	intraFreqMeasQuantity				IntraFreqMeasQuantity				OPTIONAL,
	intraFreqReportingQuantity			IntraFreqReportingQuantity			OPTIONAL,
	measurementValidity					MeasurementValidity					OPTIONAL,
	reportCriteria						IntraFreqReportCriteria				OPTIONAL
}

IntraFrequencyMeasurement-r4 ::=	SEQUENCE {
	intraFreqCellInfoList				IntraFreqCellInfoList-r4			OPTIONAL,
	intraFreqMeasQuantity				IntraFreqMeasQuantity				OPTIONAL,
	intraFreqReportingQuantity			IntraFreqReportingQuantity			OPTIONAL,
	measurementValidity					MeasurementValidity					OPTIONAL,
	reportCriteria						IntraFreqReportCriteria-r4			OPTIONAL
}

IODE ::=							INTEGER (0..255)

IP-Length ::=						ENUMERATED {
										ipl5, ipl10 }

IP-PCCPCH-r4 ::=					BOOLEAN

IP-Spacing ::=						ENUMERATED {
										e5, e7, e10, e15, e20,
										e30, e40, e50 }

IP-Spacing-TDD ::=						ENUMERATED {
										e30, e40, e50, e70, e100}

IS-2000SpecificMeasInfo ::=			ENUMERATED {
										frequency, timeslot, colourcode,
										outputpower, pn-Offset }

MaxNumberOfReportingCellsType1 ::=	ENUMERATED {
										e1, e2, e3, e4, e5, e6}

MaxNumberOfReportingCellsType2 ::=	ENUMERATED {
										e1, e2, e3, e4, e5, e6, e7, e8, e9, e10, e11, e12}

MaxNumberOfReportingCellsType3 ::=	ENUMERATED {
										viactCellsPlus1,
										viactCellsPlus2,
										viactCellsPlus3,
										viactCellsPlus4,
										viactCellsPlus5,
										viactCellsPlus6 }

MaxReportedCellsOnRACH ::=			ENUMERATED {
										noReport,
										currentCell,
										currentAnd-1-BestNeighbour,
										currentAnd-2-BestNeighbour,
										currentAnd-3-BestNeighbour,
										currentAnd-4-BestNeighbour,
										currentAnd-5-BestNeighbour,
										currentAnd-6-BestNeighbour }

MaxReportedCellsOnRACHinterFreq ::=		INTEGER (1..8)

MeasuredResults ::=					CHOICE {
	intraFreqMeasuredResultsList		IntraFreqMeasuredResultsList,
	interFreqMeasuredResultsList		InterFreqMeasuredResultsList,
	interRATMeasuredResultsList		InterRATMeasuredResultsList,
	trafficVolumeMeasuredResultsList	TrafficVolumeMeasuredResultsList,
	qualityMeasuredResults				QualityMeasuredResults,
	ue-InternalMeasuredResults			UE-InternalMeasuredResults,
	ue-positioning-MeasuredResults		UE-Positioning-MeasuredResults,
	spare								NULL
}

MeasuredResults-v390ext ::=					SEQUENCE {
	ue-positioning-MeasuredResults-v390ext					UE-Positioning-MeasuredResults-v390ext
}


MeasuredResults-v590ext ::= CHOICE {
	intraFrequencyMeasuredResultsList		IntraFrequencyMeasuredResultsList-v590ext,
	interFrequencyMeasuredResultsList		InterFrequencyMeasuredResultsList-v590ext
}

MeasuredResults-LCR-r4 ::=			CHOICE {
	intraFreqMeasuredResultsList		IntraFreqMeasuredResultsList,
	interFreqMeasuredResultsList		InterFreqMeasuredResultsList,
	interRATMeasuredResultsList		InterRATMeasuredResultsList,
	trafficVolumeMeasuredResultsList	TrafficVolumeMeasuredResultsList,
	qualityMeasuredResults				QualityMeasuredResults,
	ue-InternalMeasuredResults			UE-InternalMeasuredResults-LCR-r4,
	ue-positioniing-MeasuredResults		UE-Positioning-MeasuredResults,
	spare								NULL
}

MeasuredResultsList ::=				SEQUENCE (SIZE (1..maxAdditionalMeas)) OF
										MeasuredResults

MeasuredResultsList-LCR-r4-ext ::=	SEQUENCE (SIZE (1..maxAdditionalMeas)) OF
										MeasuredResults-LCR-r4

MeasuredResultsOnRACH ::=			SEQUENCE {
	currentCell 						SEQUENCE {
		modeSpecificInfo					CHOICE {
			fdd									SEQUENCE {
				measurementQuantity					CHOICE {
					cpich-Ec-N0							CPICH-Ec-N0,
					cpich-RSCP							CPICH-RSCP,
					pathloss							Pathloss,
					spare								NULL 
				}
			},
			tdd									SEQUENCE {
				timeslotISCP						TimeslotISCP-List		OPTIONAL,
				primaryCCPCH-RSCP					PrimaryCCPCH-RSCP		OPTIONAL
			}
		}
	},
	monitoredCells						MonitoredCellRACH-List				OPTIONAL
}

MeasuredResultsOnRACHinterFreq ::=		SEQUENCE {
	interFreqCellIndication-SIB11			INTEGER (0..1),
	interFreqCellIndication-SIB12			INTEGER (0..1),
	interFreqRACHRepCellsList				InterFreqRACHRepCellsList
}

MeasurementCommand ::=				CHOICE {
	setup								MeasurementType,
	modify								SEQUENCE {
		measurementType						MeasurementType					OPTIONAL
	},
	release								NULL
}

MeasurementCommand-r4 ::=			CHOICE {
	setup								MeasurementType-r4,
	modify								SEQUENCE {
		measurementType						MeasurementType-r4				OPTIONAL
	},
	release								NULL
}

MeasurementControlSysInfo ::=		SEQUENCE {
	-- CHOICE cellSelectQualityMeasure represents PCCPCH-RSCP in TDD mode.
	use-of-HCS							CHOICE	{
		hcs-not-used 					SEQUENCE	{
			cellSelectQualityMeasure	CHOICE	{
				cpich-RSCP				SEQUENCE	{
					intraFreqMeasurementSysInfo			IntraFreqMeasurementSysInfo-RSCP	OPTIONAL,
					interFreqMeasurementSysInfo			InterFreqMeasurementSysInfo-RSCP	OPTIONAL
				},
				cpich-Ec-N0				SEQUENCE	{
					intraFreqMeasurementSysInfo			IntraFreqMeasurementSysInfo-ECN0		OPTIONAL,
					interFreqMeasurementSysInfo			InterFreqMeasurementSysInfo-ECN0	OPTIONAL
				}
			},
			interRATMeasurementSysInfo		InterRATMeasurementSysInfo-B		OPTIONAL
		},
		hcs-used						SEQUENCE	{
			cellSelectQualityMeasure	CHOICE	{
				cpich-RSCP				SEQUENCE	{
					intraFreqMeasurementSysInfo			IntraFreqMeasurementSysInfo-HCS-RSCP			OPTIONAL,
					interFreqMeasurementSysInfo			InterFreqMeasurementSysInfo-HCS-RSCP			OPTIONAL
				},
				cpich-Ec-N0				SEQUENCE	{
					intraFreqMeasurementSysInfo			IntraFreqMeasurementSysInfo-HCS-ECN0			OPTIONAL,
					interFreqMeasurementSysInfo			InterFreqMeasurementSysInfo-HCS-ECN0			OPTIONAL				}
			},
			interRATMeasurementSysInfo		InterRATMeasurementSysInfo		OPTIONAL
		}
	},

	trafficVolumeMeasSysInfo			TrafficVolumeMeasSysInfo			OPTIONAL,
	-- dummy is not used in this version of specification and it shall be ignored by the UE.
	dummy		UE-InternalMeasurementSysInfo		OPTIONAL
}

MeasurementControlSysInfo-LCR-r4-ext ::=	SEQUENCE {
	-- CHOICE use-of-HCS shall have the same value as the use-of-HCS
	-- in MeasurementControlSysInfo
	-- CHOICE cellSelectQualityMeasure represents PCCPCH-RSCP in TDD mode.
	use-of-HCS							CHOICE	{
		hcs-not-used 					SEQUENCE	{
			-- CHOICE cellSelectQualityMeasure shall have the same value as the
			-- cellSelectQualityMeasure in MeasurementControlSysInfo
			cellSelectQualityMeasure	CHOICE	{
				cpich-RSCP				SEQUENCE	{
					intraFreqMeasurementSysInfo	IntraFreqMeasurementSysInfo-RSCP-LCR-r4	OPTIONAL,
					interFreqMeasurementSysInfo	InterFreqMeasurementSysInfo-RSCP-LCR-r4	OPTIONAL
				},
				cpich-Ec-N0				SEQUENCE	{
					intraFreqMeasurementSysInfo	IntraFreqMeasurementSysInfo-ECN0-LCR-r4	OPTIONAL,
					interFreqMeasurementSysInfo	InterFreqMeasurementSysInfo-ECN0-LCR-r4	OPTIONAL
				}
			}
		},
		hcs-used						SEQUENCE	{
			-- CHOICE cellSelectQualityMeasure shall have the same value as the
			-- cellSelectQualityMeasure in MeasurementControlSysInfo
			cellSelectQualityMeasure	CHOICE	{
				cpich-RSCP				SEQUENCE	{
					intraFreqMeasurementSysInfo	IntraFreqMeasurementSysInfo-HCS-RSCP-LCR-r4	OPTIONAL,
					interFreqMeasurementSysInfo	InterFreqMeasurementSysInfo-HCS-RSCP-LCR-r4	OPTIONAL
				},
				cpich-Ec-N0				SEQUENCE	{
					intraFreqMeasurementSysInfo	IntraFreqMeasurementSysInfo-HCS-ECN0-LCR-r4	OPTIONAL,
					interFreqMeasurementSysInfo	InterFreqMeasurementSysInfo-HCS-ECN0-LCR-r4	OPTIONAL
				}
			}
		}
	}
}

MeasurementIdentity ::=		INTEGER (1..16)

MeasurementQuantityGSM ::=			ENUMERATED {
										gsm-CarrierRSSI,
										dummy }

MeasurementReportingMode ::=		SEQUENCE {
	measurementReportTransferMode		TransferMode,
	periodicalOrEventTrigger			PeriodicalOrEventTrigger
}	

MeasurementType ::=					CHOICE {
	intraFrequencyMeasurement			IntraFrequencyMeasurement,
	interFrequencyMeasurement			InterFrequencyMeasurement,
	interRATMeasurement					InterRATMeasurement,
	ue-positioning-Measurement			UE-Positioning-Measurement,
	trafficVolumeMeasurement			TrafficVolumeMeasurement,
	qualityMeasurement					QualityMeasurement,
	ue-InternalMeasurement				UE-InternalMeasurement
}

MeasurementType-r4 ::=				CHOICE {
	intraFrequencyMeasurement			IntraFrequencyMeasurement-r4,
	interFrequencyMeasurement			InterFrequencyMeasurement-r4,
	interRATMeasurement					InterRATMeasurement-r4,
	up-Measurement						UE-Positioning-Measurement-r4,
	trafficVolumeMeasurement			TrafficVolumeMeasurement,
	qualityMeasurement					QualityMeasurement,
	ue-InternalMeasurement				UE-InternalMeasurement-r4
}

MeasurementValidity ::=				SEQUENCE {
	ue-State							ENUMERATED {
											cell-DCH, all-But-Cell-DCH, all-States }
}

MonitoredCellRACH-List ::=			SEQUENCE (SIZE (1..8)) OF
										MonitoredCellRACH-Result

MonitoredCellRACH-Result ::=		SEQUENCE {
	sfn-SFN-ObsTimeDifference			SFN-SFN-ObsTimeDifference			OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			primaryCPICH-Info					PrimaryCPICH-Info,
			measurementQuantity					CHOICE {
				cpich-Ec-N0							CPICH-Ec-N0,
				cpich-RSCP							CPICH-RSCP,
				pathloss							Pathloss,
				spare								NULL
			}																OPTIONAL
		},
		tdd									SEQUENCE {
			cellParametersID					CellParametersID,
			primaryCCPCH-RSCP					PrimaryCCPCH-RSCP
		}
	}
}

MultipathIndicator ::=				ENUMERATED {
										nm,
										low,
										medium,
										high }

N-CR-T-CRMaxHyst ::=				SEQUENCE {
	n-CR								INTEGER (1..16)						DEFAULT 8,
	t-CRMaxHyst							T-CRMaxHyst
}

NavigationModelSatInfo ::=			SEQUENCE {
	satID								SatID,
	satelliteStatus						SatelliteStatus,
	ephemerisParameter					EphemerisParameter		OPTIONAL
}

NavigationModelSatInfoList ::=		SEQUENCE (SIZE (1..maxSat)) OF
										NavigationModelSatInfo

EphemerisParameter ::=						SEQUENCE {
	codeOnL2							BIT STRING (SIZE (2)),
	uraIndex							BIT STRING (SIZE (4)),
	satHealth							BIT STRING (SIZE (6)),
	iodc								BIT STRING (SIZE (10)),
	l2Pflag								BIT STRING (SIZE (1)),
	sf1Revd								SubFrame1Reserved,
	t-GD								BIT STRING (SIZE (8)),
	t-oc								BIT STRING (SIZE (16)),
	af2									BIT STRING (SIZE (8)),
	af1									BIT STRING (SIZE (16)),
	af0									BIT STRING (SIZE (22)),
	c-rs								BIT STRING (SIZE (16)),
	delta-n								BIT STRING (SIZE (16)),
	m0									BIT STRING (SIZE (32)),
	c-uc								BIT STRING (SIZE (16)),
	e									BIT STRING (SIZE (32)),
	c-us								BIT STRING (SIZE (16)),
	a-Sqrt								BIT STRING (SIZE (32)),
	t-oe								BIT STRING (SIZE (16)),
	fitInterval							BIT STRING (SIZE (1)),
	aodo								BIT STRING (SIZE (5)),
	c-ic								BIT STRING (SIZE (16)),
	omega0								BIT STRING (SIZE (32)),
	c-is								BIT STRING (SIZE (16)),
	i0									BIT STRING (SIZE (32)),
	c-rc								BIT STRING (SIZE (16)),
	omega								BIT STRING (SIZE (32)),
	omegaDot							BIT STRING (SIZE (24)),
	iDot								BIT STRING (SIZE (14))
}
NC-Mode ::=							BIT STRING (SIZE (3))

Neighbour ::=						SEQUENCE {
	modeSpecificInfo				CHOICE {
		fdd								SEQUENCE {
			neighbourIdentity					PrimaryCPICH-Info					OPTIONAL,
			uE-RX-TX-TimeDifferenceType2Info	UE-RX-TX-TimeDifferenceType2Info	OPTIONAL
		},
		tdd								SEQUENCE {
			neighbourAndChannelIdentity		CellAndChannelIdentity					OPTIONAL
		}
	},	
	neighbourQuality					NeighbourQuality,
	sfn-SFN-ObsTimeDifference2			SFN-SFN-ObsTimeDifference2}

Neighbour-v390ext ::=						SEQUENCE {
	modeSpecificInfo				CHOICE {
		fdd								SEQUENCE {
			frequencyInfo						FrequencyInfo
		},
		tdd								NULL
	}
}

NeighbourList ::=					SEQUENCE (SIZE (1..maxCellMeas)) OF
										Neighbour

-- The order of the cells in IE NeighbourList-v390ext shall be the
-- same as the order in IE NeighbourList
NeighbourList-v390ext ::=					SEQUENCE (SIZE (1..maxCellMeas)) OF
										Neighbour-v390ext

NeighbourQuality ::=				SEQUENCE {
	ue-Positioning-OTDOA-Quality		UE-Positioning-OTDOA-Quality
}

NewInterFreqCell ::=				SEQUENCE {
	interFreqCellID						InterFreqCellID						OPTIONAL,
	frequencyInfo						FrequencyInfo						OPTIONAL,
	cellInfo							CellInfo
}

NewInterFreqCell-r4 ::=				SEQUENCE {
	interFreqCellID						InterFreqCellID						OPTIONAL,
	frequencyInfo						FrequencyInfo						OPTIONAL,
	cellInfo							CellInfo-r4
}

NewInterFreqCellList ::=			SEQUENCE (SIZE (1..maxCellMeas)) OF
										NewInterFreqCell

NewInterFreqCellList-r4 ::=			SEQUENCE (SIZE (1..maxCellMeas)) OF
										NewInterFreqCell-r4

NewInterFreqCellSI-RSCP ::=				SEQUENCE {
	interFreqCellID						InterFreqCellID						OPTIONAL,
	frequencyInfo						FrequencyInfo						OPTIONAL,
	cellInfo							CellInfoSI-RSCP
}

NewInterFreqCellSI-ECN0 ::=				SEQUENCE {
	interFreqCellID						InterFreqCellID						OPTIONAL,
	frequencyInfo						FrequencyInfo						OPTIONAL,
	cellInfo							CellInfoSI-ECN0
}

NewInterFreqCellSI-HCS-RSCP ::=				SEQUENCE {
	interFreqCellID						InterFreqCellID						OPTIONAL,
	frequencyInfo						FrequencyInfo						OPTIONAL,
	cellInfo							CellInfoSI-HCS-RSCP
}

NewInterFreqCellSI-HCS-ECN0 ::=				SEQUENCE {
	interFreqCellID						InterFreqCellID						OPTIONAL,
	frequencyInfo						FrequencyInfo						OPTIONAL,
	cellInfo							CellInfoSI-HCS-ECN0
}

NewInterFreqCellSI-RSCP-LCR-r4 ::=			SEQUENCE {
	interFreqCellID						InterFreqCellID						OPTIONAL,
	frequencyInfo						FrequencyInfo						OPTIONAL,
	cellInfo							CellInfoSI-RSCP-LCR-r4
}

NewInterFreqCellSI-ECN0-LCR-r4 ::=			SEQUENCE {
	interFreqCellID						InterFreqCellID						OPTIONAL,
	frequencyInfo						FrequencyInfo						OPTIONAL,
	cellInfo							CellInfoSI-ECN0-LCR-r4
}

NewInterFreqCellSI-HCS-RSCP-LCR-r4 ::=		SEQUENCE {
	interFreqCellID						InterFreqCellID						OPTIONAL,
	frequencyInfo						FrequencyInfo						OPTIONAL,
	cellInfo							CellInfoSI-HCS-RSCP-LCR-r4
}

NewInterFreqCellSI-HCS-ECN0-LCR-r4 ::=		SEQUENCE {
	interFreqCellID						InterFreqCellID						OPTIONAL,
	frequencyInfo						FrequencyInfo						OPTIONAL,
	cellInfo							CellInfoSI-HCS-ECN0-LCR-r4
}

NewInterFreqCellSI-List-ECN0 ::=			SEQUENCE (SIZE (1..maxCellMeas)) OF
										NewInterFreqCellSI-ECN0

NewInterFreqCellSI-List-HCS-RSCP ::=			SEQUENCE (SIZE (1..maxCellMeas)) OF
										NewInterFreqCellSI-HCS-RSCP

NewInterFreqCellSI-List-HCS-ECN0 ::=			SEQUENCE (SIZE (1..maxCellMeas)) OF
										NewInterFreqCellSI-HCS-ECN0

NewInterFreqCellSI-List-RSCP ::=		SEQUENCE (SIZE (1..maxCellMeas)) OF
										NewInterFreqCellSI-RSCP

NewInterFreqCellSI-List-ECN0-LCR-r4 ::=		SEQUENCE (SIZE (1..maxCellMeas)) OF
										NewInterFreqCellSI-ECN0-LCR-r4

NewInterFreqCellSI-List-HCS-RSCP-LCR-r4 ::=	SEQUENCE (SIZE (1..maxCellMeas)) OF
										NewInterFreqCellSI-HCS-RSCP-LCR-r4

NewInterFreqCellSI-List-HCS-ECN0-LCR-r4 ::=	SEQUENCE (SIZE (1..maxCellMeas)) OF
										NewInterFreqCellSI-HCS-ECN0-LCR-r4

NewInterFreqCellSI-List-RSCP-LCR-r4 ::=		SEQUENCE (SIZE (1..maxCellMeas)) OF
										NewInterFreqCellSI-RSCP-LCR-r4

NewInterRATCell ::=				SEQUENCE {
	interRATCellID						InterRATCellID			OPTIONAL,
	technologySpecificInfo				CHOICE {
		gsm									SEQUENCE {
			cellSelectionReselectionInfo		CellSelectReselectInfoSIB-11-12		OPTIONAL,
			interRATCellIndividualOffset 		InterRATCellIndividualOffset,
			bsic								BSIC,
			frequency-band						Frequency-Band,
			bcch-ARFCN							BCCH-ARFCN,
			-- dummy is not used in this version of the specification, it should
			-- not be sent and if received it should be ignored.
			dummy								NULL				OPTIONAL
		},
		is-2000								SEQUENCE {
			is-2000SpecificMeasInfo				IS-2000SpecificMeasInfo
		},
		-- ASN.1 inconsistency: NewInterRATCellList should be optional within
		-- InterRATCellInfoList. The UE shall consider IE NewInterRATCell with
		-- technologySpecificInfo set to "absent" as valid and handle the
		-- message as if the IE NewInterRATCell was absent
		absent								NULL,
		spare1								NULL
	}
}

NewInterRATCell-B ::=				SEQUENCE {
	interRATCellID						InterRATCellID				OPTIONAL,
	technologySpecificInfo				CHOICE {
		gsm									SEQUENCE {
			cellSelectionReselectionInfo		CellSelectReselectInfoSIB-11-12		OPTIONAL,
			interRATCellIndividualOffset 		InterRATCellIndividualOffset,
			bsic								BSIC,
			frequency-band						Frequency-Band,
			bcch-ARFCN							BCCH-ARFCN,
			-- dummy is not used in this version of the specification, it should
			-- not be sent and if received it should be ignored.
			dummy								NULL				OPTIONAL
		},
		is-2000								SEQUENCE {
			is-2000SpecificMeasInfo				IS-2000SpecificMeasInfo
		},
		-- ASN.1 inconsistency: NewInterRATCellList-B should be optional within
		-- InterRATCellInfoList-B. The UE shall consider IE NewInterRATCell-B with
		-- technologySpecificInfo set to "absent" as valid and handle the
		-- message as if the IE NewInterRATCell-B was absent
		absent								NULL,
		spare1								NULL
	}
}

NewInterRATCellList ::=			SEQUENCE (SIZE (1..maxCellMeas)) OF
										NewInterRATCell

NewInterRATCellList-B ::=			SEQUENCE (SIZE (1..maxCellMeas)) OF
										NewInterRATCell-B

NewIntraFreqCell ::=				SEQUENCE {
	intraFreqCellID						IntraFreqCellID						OPTIONAL,
	cellInfo							CellInfo
}

NewIntraFreqCell-r4 ::=				SEQUENCE {
	intraFreqCellID						IntraFreqCellID						OPTIONAL,
	cellInfo							CellInfo-r4
}

NewIntraFreqCellList ::=			SEQUENCE (SIZE (1..maxCellMeas)) OF
										NewIntraFreqCell

NewIntraFreqCellList-r4 ::=			SEQUENCE (SIZE (1..maxCellMeas)) OF
										NewIntraFreqCell-r4

NewIntraFreqCellSI-RSCP ::=				SEQUENCE {
	intraFreqCellID						IntraFreqCellID						OPTIONAL,
	cellInfo							CellInfoSI-RSCP
}

NewIntraFreqCellSI-ECN0 ::=			SEQUENCE {
	intraFreqCellID						IntraFreqCellID						OPTIONAL,
	cellInfo							CellInfoSI-ECN0
}
NewIntraFreqCellSI-HCS-RSCP ::=		SEQUENCE {
	intraFreqCellID						IntraFreqCellID						OPTIONAL,
	cellInfo							CellInfoSI-HCS-RSCP
}

NewIntraFreqCellSI-HCS-ECN0 ::=		SEQUENCE {
	intraFreqCellID						IntraFreqCellID						OPTIONAL,
	cellInfo							CellInfoSI-HCS-ECN0
}

NewIntraFreqCellSI-RSCP-LCR-r4 ::=		SEQUENCE {
	intraFreqCellID						IntraFreqCellID						OPTIONAL,
	cellInfo							CellInfoSI-RSCP-LCR-r4
}

NewIntraFreqCellSI-ECN0-LCR-r4 ::=		SEQUENCE {
	intraFreqCellID						IntraFreqCellID						OPTIONAL,
	cellInfo							CellInfoSI-ECN0-LCR-r4
}
NewIntraFreqCellSI-HCS-RSCP-LCR-r4 ::=	SEQUENCE {
	intraFreqCellID						IntraFreqCellID						OPTIONAL,
	cellInfo							CellInfoSI-HCS-RSCP-LCR-r4
}

NewIntraFreqCellSI-HCS-ECN0-LCR-r4 ::=	SEQUENCE {
	intraFreqCellID						IntraFreqCellID						OPTIONAL,
	cellInfo							CellInfoSI-HCS-ECN0-LCR-r4
}

NewIntraFreqCellSI-List-RSCP ::=		SEQUENCE (SIZE (1..maxCellMeas)) OF
											NewIntraFreqCellSI-RSCP

NewIntraFreqCellSI-List-ECN0 ::=		SEQUENCE (SIZE (1..maxCellMeas)) OF
										NewIntraFreqCellSI-ECN0

NewIntraFreqCellSI-List-HCS-RSCP ::=	SEQUENCE (SIZE (1..maxCellMeas)) OF
										NewIntraFreqCellSI-HCS-RSCP

NewIntraFreqCellSI-List-HCS-ECN0 ::=	SEQUENCE (SIZE (1..maxCellMeas)) OF
										NewIntraFreqCellSI-HCS-ECN0

NewIntraFreqCellSI-List-RSCP-LCR-r4 ::=		SEQUENCE (SIZE (1..maxCellMeas)) OF
											NewIntraFreqCellSI-RSCP-LCR-r4

NewIntraFreqCellSI-List-ECN0-LCR-r4 ::=		SEQUENCE (SIZE (1..maxCellMeas)) OF
										NewIntraFreqCellSI-ECN0-LCR-r4

NewIntraFreqCellSI-List-HCS-RSCP-LCR-r4 ::=	SEQUENCE (SIZE (1..maxCellMeas)) OF
										NewIntraFreqCellSI-HCS-RSCP-LCR-r4

NewIntraFreqCellSI-List-HCS-ECN0-LCR-r4 ::=	SEQUENCE (SIZE (1..maxCellMeas)) OF
										NewIntraFreqCellSI-HCS-ECN0-LCR-r4

	-- IE "nonUsedFreqThreshold" is not needed in case of event 2a
	-- In case of event 2a UTRAN should include value 0 within IE "nonUsedFreqThreshold"
	-- In case of event 2a, the UE shall be ignore IE "nonUsedFreqThreshold"
	-- In later versions of the message including this IE, a special version of
	-- IE "NonUsedFreqParameterList" may be defined for event 2a, namely a
	-- version not including IE "nonUsedFreqThreshold"
NonUsedFreqParameter ::=			SEQUENCE {
	nonUsedFreqThreshold				Threshold,
	nonUsedFreqW						W
}

NonUsedFreqParameterList ::=		SEQUENCE (SIZE (1..maxFreq)) OF
										NonUsedFreqParameter

ObservedTimeDifferenceToGSM ::=		INTEGER (0..4095)

OTDOA-SearchWindowSize ::=			ENUMERATED {
										c20, c40, c80, c160, c320,
										c640, c1280, moreThan1280 }

-- SPARE: Pathloss, Max = 158
-- Values above Max are spare
Pathloss ::=						INTEGER (46..173)

PenaltyTime-RSCP ::=				CHOICE {
	notUsed								NULL,
	pt10								TemporaryOffset1,
	pt20								TemporaryOffset1,
	pt30								TemporaryOffset1,
	pt40								TemporaryOffset1,
	pt50								TemporaryOffset1,
	pt60								TemporaryOffset1
}

PenaltyTime-ECN0 ::=				CHOICE {
	notUsed								NULL,
	pt10								TemporaryOffsetList,
	pt20								TemporaryOffsetList,
	pt30								TemporaryOffsetList,
	pt40								TemporaryOffsetList,
	pt50								TemporaryOffsetList,
	pt60								TemporaryOffsetList
}

PendingTimeAfterTrigger ::=			ENUMERATED {
										ptat0-25, ptat0-5, ptat1,
										ptat2, ptat4, ptat8, ptat16 }

PeriodicalOrEventTrigger ::=		ENUMERATED {
										periodical,
										eventTrigger }

PeriodicalReportingCriteria ::=		SEQUENCE {
	reportingAmount						ReportingAmount					DEFAULT ra-Infinity,
	reportingInterval					ReportingIntervalLong
}

PeriodicalWithReportingCellStatus ::= SEQUENCE {
	periodicalReportingCriteria			PeriodicalReportingCriteria,
	reportingCellStatus					ReportingCellStatus					OPTIONAL
}

PLMNIdentitiesOfNeighbourCells ::=	SEQUENCE {
		plmnsOfIntraFreqCellsList		PLMNsOfIntraFreqCellsList			OPTIONAL,
		plmnsOfInterFreqCellsList		PLMNsOfInterFreqCellsList			OPTIONAL,
		plmnsOfInterRATCellsList		PLMNsOfInterRATCellsList			OPTIONAL
}

PLMNsOfInterFreqCellsList ::=			SEQUENCE (SIZE (1..maxCellMeas)) OF
											SEQUENCE {
	plmn-Identity								PLMN-Identity				OPTIONAL
}

PLMNsOfIntraFreqCellsList ::=			SEQUENCE (SIZE (1..maxCellMeas)) OF
											SEQUENCE {
	plmn-Identity								PLMN-Identity				OPTIONAL
}

PLMNsOfInterRATCellsList ::=			SEQUENCE (SIZE (1..maxCellMeas)) OF
											SEQUENCE {
	plmn-Identity								PLMN-Identity				OPTIONAL
}

PositionEstimate ::=				CHOICE {
	ellipsoidPoint						EllipsoidPoint,
	ellipsoidPointUncertCircle			EllipsoidPointUncertCircle,
	ellipsoidPointUncertEllipse			EllipsoidPointUncertEllipse,
	ellipsoidPointAltitude				EllipsoidPointAltitude,
	ellipsoidPointAltitudeEllipse		EllipsoidPointAltitudeEllipsoide
}

PositioningMethod ::=				ENUMERATED {
										otdoa,
										gps,
										otdoaOrGPS, cellID }

-- Actual value PRC = IE value * 0.32
PRC ::=								INTEGER (-2047..2047)

-- SPARE: PrimaryCCPCH-RSCP, Max = 91
-- Values above Max are spare
PrimaryCCPCH-RSCP ::=				INTEGER (0..127)

Q-HCS ::=							INTEGER (0..99)

Q-OffsetS-N ::=						INTEGER (-50..50)

Q-QualMin ::=						INTEGER (-24..0)

-- Actual value Q-RxlevMin = (IE value * 2) + 1
Q-RxlevMin ::=						INTEGER (-58..-13)

QualityEventResults ::=				SEQUENCE (SIZE (1..maxTrCH)) OF
										TransportChannelIdentity

QualityMeasuredResults ::=			SEQUENCE {
	blerMeasurementResultsList			BLER-MeasurementResultsList			OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									NULL,
		tdd									SEQUENCE {
			sir-MeasurementResults				SIR-MeasurementList			OPTIONAL
		}
	}
}

QualityMeasurement ::=				SEQUENCE {
	qualityReportingQuantity			QualityReportingQuantity			OPTIONAL,
	reportCriteria						QualityReportCriteria
}

QualityReportCriteria ::=			CHOICE {
	qualityReportingCriteria			QualityReportingCriteria,
	periodicalReportingCriteria			PeriodicalReportingCriteria,
	noReporting							NULL
}

QualityReportingCriteria ::=		SEQUENCE (SIZE (1..maxTrCH)) OF
										QualityReportingCriteriaSingle

QualityReportingCriteriaSingle ::=	SEQUENCE {
	transportChannelIdentity			TransportChannelIdentity,
	totalCRC							INTEGER (1..512),
	badCRC								INTEGER (1..512),
	pendingAfterTrigger					INTEGER (1..512)
}

QualityReportingQuantity ::=		SEQUENCE {
	dl-TransChBLER						BOOLEAN,
	bler-dl-TransChIdList				BLER-TransChIdList					OPTIONAL,
	modeSpecificInfo					CHOICE {
		fdd									NULL,
		tdd									SEQUENCE {
			sir-TFCS-List						SIR-TFCS-List				OPTIONAL
		}
	}
}

RAT-Type ::=						ENUMERATED {
										gsm, is2000 }

ReferenceCellPosition ::=			CHOICE {
	ellipsoidPoint						EllipsoidPoint,
	ellipsoidPointWithAltitude			EllipsoidPointAltitude
}

-- ReferenceLocation, as defined in 23.032
ReferenceLocation ::=			SEQUENCE {
	ellipsoidPointAltitudeEllipsoide		EllipsoidPointAltitudeEllipsoide
}

ReferenceTimeDifferenceToCell ::= 	CHOICE {
	-- Actual value accuracy40 = IE value * 40
	accuracy40							INTEGER (0..960),
	-- Actual value accuracy256 = IE value * 256
	accuracy256							INTEGER (0..150),
	-- Actual value accuracy2560 = IE value * 2560
	accuracy2560						INTEGER (0..15)
}

RemovedInterFreqCellList ::=		CHOICE {
	removeAllInterFreqCells				NULL,
	removeSomeInterFreqCells			SEQUENCE (SIZE (1..maxCellMeas)) OF
											InterFreqCellID,
	removeNoInterFreqCells				NULL
}

RemovedInterRATCellList ::=		CHOICE {
	removeAllInterRATCells			NULL,
	removeSomeInterRATCells			SEQUENCE (SIZE (1..maxCellMeas)) OF
											InterRATCellID,
	removeNoInterRATCells			NULL
}

RemovedIntraFreqCellList ::=		CHOICE {
	removeAllIntraFreqCells				NULL,
	removeSomeIntraFreqCells			SEQUENCE (SIZE (1..maxCellMeas)) OF
											IntraFreqCellID,
	removeNoIntraFreqCells				NULL
}

ReplacementActivationThreshold ::= 	ENUMERATED {
										notApplicable, t1, t2,
										t3, t4, t5, t6, t7 }

ReportDeactivationThreshold ::=		ENUMERATED {
										notApplicable, t1, t2,
										t3, t4, t5, t6, t7 }

ReportingAmount ::=					ENUMERATED {
										ra1, ra2, ra4, ra8, ra16, ra32,
										ra64, ra-Infinity }

ReportingCellStatus ::=				CHOICE{
	withinActiveSet						MaxNumberOfReportingCellsType1,
	withinMonitoredSetUsedFreq			MaxNumberOfReportingCellsType1,
	withinActiveAndOrMonitoredUsedFreq	MaxNumberOfReportingCellsType1,
	withinDetectedSetUsedFreq			MaxNumberOfReportingCellsType1,
	withinMonitoredAndOrDetectedUsedFreq
										MaxNumberOfReportingCellsType1,
	allActiveplusMonitoredSet			MaxNumberOfReportingCellsType3,
	allActivePlusDetectedSet			MaxNumberOfReportingCellsType3,
	allActivePlusMonitoredAndOrDetectedSet
										MaxNumberOfReportingCellsType3,
	withinVirtualActSet				MaxNumberOfReportingCellsType1,
	withinMonitoredSetNonUsedFreq		MaxNumberOfReportingCellsType1,
	withinMonitoredAndOrVirtualActiveSetNonUsedFreq
										MaxNumberOfReportingCellsType1,
	allVirtualActSetplusMonitoredSetNonUsedFreq	
										MaxNumberOfReportingCellsType3,
	withinActSetOrVirtualActSet-InterRATcells
										MaxNumberOfReportingCellsType2,
	withinActSetAndOrMonitoredUsedFreqOrVirtualActSetAndOrMonitoredNonUsedFreq	
										MaxNumberOfReportingCellsType2
}

ReportingCellStatusOpt ::=			SEQUENCE {
	reportingCellStatus					ReportingCellStatus					OPTIONAL
}


ReportingInfoForCellDCH ::=			SEQUENCE {
	intraFreqReportingQuantity			IntraFreqReportingQuantity,
	measurementReportingMode			MeasurementReportingMode,
	reportCriteria						CellDCH-ReportCriteria
}

ReportingInfoForCellDCH-LCR-r4 ::=	SEQUENCE {
	intraFreqReportingQuantity			IntraFreqReportingQuantity,
	measurementReportingMode			MeasurementReportingMode,
	reportCriteria						CellDCH-ReportCriteria-LCR-r4
}

ReportingInterval ::=				ENUMERATED {
										noPeriodicalreporting, ri0-25, 
										ri0-5, ri1, ri2, ri4, ri8, ri16 }

ReportingIntervalLong ::=			ENUMERATED {
										ril0, ril0-25, ril0-5, ril1,
										ril2, ril3, ril4, ril6, ril8,
										ril12, ril16, ril20, ril24,
										ril28, ril32, ril64 }
									-- When the value ril0 is used, the UE behaviour is not
									-- defined.

-- Actual value ReportingRange = IE value * 0.5
ReportingRange ::=					INTEGER (0..29)

RL-AdditionInfoList ::=				SEQUENCE (SIZE (1..maxRL)) OF
										PrimaryCPICH-Info

RL-InformationLists ::=				SEQUENCE {
	rl-AdditionInfoList					RL-AdditionInfoList					OPTIONAL,
	rL-RemovalInformationList			RL-RemovalInformationList			OPTIONAL
}

RLC-BuffersPayload ::=				ENUMERATED {
										pl0, pl4, pl8, pl16, pl32,
										pl64, pl128, pl256, pl512, pl1024,
										pl2k, pl4k, pl8k, pl16k, pl32k,
										pl64k, pl128k, pl256k, pl512k, pl1024k,
										spare12, spare11, spare10, spare9, spare8,
										spare7, spare6, spare5, spare4, spare3,
										spare2, spare1 }

-- Actual value RRC = IE value * 0.032
RRC ::=								INTEGER (-127..127)

SatData ::=							SEQUENCE{
	satID								SatID,
	iode								IODE
}

SatDataList ::=						SEQUENCE (SIZE (0..maxSat)) OF
										SatData

SatelliteStatus ::=					ENUMERATED {
										ns-NN-U,
										es-SN,
										es-NN-U,
										rev2,
										rev }

-- Identifies the satellite and is equal to (SV ID No - 1) where SV ID No is defined in [12].
SatID ::=							INTEGER (0..63)

SFN-Offset-Validity ::=			ENUMERATED { false }

SFN-SFN-Drift ::= 					ENUMERATED {
										sfnsfndrift0, sfnsfndrift1, sfnsfndrift2,
										sfnsfndrift3, sfnsfndrift4, sfnsfndrift5,
										sfnsfndrift8, sfnsfndrift10, sfnsfndrift15,
										sfnsfndrift25, sfnsfndrift35, sfnsfndrift50,
										sfnsfndrift65, sfnsfndrift80, sfnsfndrift100,
										sfnsfndrift-1, sfnsfndrift-2, sfnsfndrift-3,
										sfnsfndrift-4, sfnsfndrift-5, sfnsfndrift-8,
										sfnsfndrift-10, sfnsfndrift-15, sfnsfndrift-25,
										sfnsfndrift-35, sfnsfndrift-50, sfnsfndrift-65,
										sfnsfndrift-80, sfnsfndrift-100}

SFN-SFN-ObsTimeDifference ::=		CHOICE {
	type1								SFN-SFN-ObsTimeDifference1,
	type2								SFN-SFN-ObsTimeDifference2
}

-- SPARE: SFN-SFN-ObsTimeDifference1, Max = 9830399
-- For 1.28Mcps TDD, Max value of SFN-SFN-ObsTimeDifference1 is 3276799.
-- Values above Max are spare
SFN-SFN-ObsTimeDifference1 ::=		INTEGER (0..16777215)

-- SPARE: SFN-SFN-ObsTimeDifference2, Max = 40961
-- For 1.28Mcps TDD, Max value of SFN-SFN-ObsTimeDifference2 is 27649.
-- Values above Max are spare
SFN-SFN-ObsTimeDifference2 ::=		INTEGER (0..65535)

SFN-SFN-OTD-Type ::=				ENUMERATED {
										noReport,
										type1,
										type2 }

SFN-SFN-RelTimeDifference1 ::=		SEQUENCE {
	sfn-Offset							INTEGER (0 .. 4095),
	sfn-sfn-Reltimedifference			INTEGER (0.. 38399)
}

SFN-TOW-Uncertainty ::=				ENUMERATED {
										lessThan10,
										moreThan10 }


SIR ::=								INTEGER (0..63)


SIR-MeasurementList ::=				SEQUENCE (SIZE (1..maxCCTrCH)) OF
										SIR-MeasurementResults


SIR-MeasurementResults ::=			SEQUENCE {
	tfcs-ID								TFCS-IdentityPlain,
	sir-TimeslotList					SIR-TimeslotList
}

SIR-TFCS ::=						TFCS-IdentityPlain


SIR-TFCS-List ::=					SEQUENCE (SIZE (1..maxCCTrCH)) OF
										SIR-TFCS

SIR-TimeslotList ::=				SEQUENCE (SIZE (1..maxTS)) OF
										SIR

-- SubFrame1Reserved, reserved bits in subframe 1 of the GPS navigation message
SubFrame1Reserved ::= 				SEQUENCE {
 	reserved1							BIT STRING (SIZE (23)),
	reserved2							BIT STRING (SIZE (24)),
	reserved3							BIT STRING (SIZE (24)),
	reserved4							BIT STRING (SIZE (16))
}

T-ADVinfo ::=						SEQUENCE {
				t-ADV					INTEGER(0..2047),
				sfn						INTEGER(0..4095)
}

T-CRMax ::=							CHOICE {
	notUsed								NULL,
	t30									N-CR-T-CRMaxHyst,
	t60									N-CR-T-CRMaxHyst,
	t120								N-CR-T-CRMaxHyst,
	t180								N-CR-T-CRMaxHyst,
	t240								N-CR-T-CRMaxHyst
}

T-CRMaxHyst ::=						ENUMERATED {
										notUsed, t10, t20, t30,
										t40, t50, t60, t70 }

TemporaryOffset1 ::=				ENUMERATED {
										to3, to6, to9, to12, to15,
										to18, to21, infinite }

TemporaryOffset2 ::=				ENUMERATED {
										to2, to3, to4, to6, to8,
										to10, to12, infinite }

TemporaryOffsetList ::=				SEQUENCE 	{
		temporaryOffset1 				TemporaryOffset1,
		temporaryOffset2 				TemporaryOffset2
}

Threshold ::=						INTEGER (-115..0)

-- The order of the list corresponds to the order of frequency defined in Inter-FreqEventCriteria
ThreholdNonUsedFrequency-deltaList ::= SEQUENCE (SIZE (1..maxFreq)) OF
											DeltaRSCPPerCell

ThresholdPositionChange ::=			ENUMERATED {
										pc10, pc20, pc30, pc40, pc50,
										pc100, pc200, pc300, pc500,
										pc1000, pc2000, pc5000, pc10000,
										pc20000, pc50000, pc100000 }

ThresholdSFN-GPS-TOW ::=			ENUMERATED {
										ms1, ms2, ms3, ms5, ms10,
										ms20, ms50, ms100 }

ThresholdSFN-SFN-Change ::=			ENUMERATED {
										c0-25, c0-5, c1, c2, c3, c4, c5,
										c10, c20, c50, c100, c200, c500,
										c1000, c2000, c5000 }

ThresholdUsedFrequency ::=			INTEGER (-115..165)


-- Actual value TimeInterval = IE value * 20.
TimeInterval ::=					INTEGER (1..13)


TimeslotInfo ::=					SEQUENCE {
	timeslotNumber						TimeslotNumber,
	burstType							BurstType
}

TimeslotInfo-LCR-r4 ::=				SEQUENCE {
	timeslotNumber						TimeslotNumber-LCR-r4
}

TimeslotInfoList ::=				SEQUENCE (SIZE (1..maxTS)) OF
										TimeslotInfo

TimeslotInfoList-LCR-r4 ::=			SEQUENCE (SIZE (1..maxTS-LCR)) OF
										TimeslotInfo-LCR-r4

TimeslotInfoList-r4 ::=				CHOICE {
	tdd384								SEQUENCE (SIZE (1..maxTS)) OF
											TimeslotInfo,
	tdd128								SEQUENCE (SIZE (1..maxTS-LCR)) OF
											TimeslotInfo-LCR-r4
}

-- SPARE: TimeslotISCP, Max = 91
-- Values above Max are spare
TimeslotISCP ::=					INTEGER (0..127)


-- TimeslotISCP-List shall not include more than 6 elements in 1.28Mcps TDD mode.
TimeslotISCP-List ::=				SEQUENCE (SIZE (1..maxTS)) OF
										TimeslotISCP

TimeslotListWithISCP ::=			SEQUENCE (SIZE (1..maxTS)) OF
										TimeslotWithISCP

TimeslotWithISCP ::=				SEQUENCE {
	timeslot							TimeslotNumber,
	timeslotISCP						TimeslotISCP
}

TimeToTrigger ::=					ENUMERATED {
										ttt0, ttt10, ttt20, ttt40, ttt60,
										ttt80, ttt100, ttt120, ttt160,
										ttt200, ttt240, tt320, ttt640,
										ttt1280, ttt2560, ttt5000 }

TrafficVolumeEventParam ::=			SEQUENCE {
	eventID								TrafficVolumeEventType,
	reportingThreshold					TrafficVolumeThreshold,
	timeToTrigger						TimeToTrigger						OPTIONAL,
	pendingTimeAfterTrigger				PendingTimeAfterTrigger				OPTIONAL,
	tx-InterruptionAfterTrigger			TX-InterruptionAfterTrigger			OPTIONAL
}

TrafficVolumeEventResults ::=		SEQUENCE {
	ul-transportChannelCausingEvent		UL-TrCH-Identity,
	trafficVolumeEventIdentity			TrafficVolumeEventType
}

TrafficVolumeEventType ::=			ENUMERATED {
										e4a,
										e4b }

TrafficVolumeMeasQuantity ::=		CHOICE {
	rlc-BufferPayload					NULL,
	averageRLC-BufferPayload			TimeInterval,
	varianceOfRLC-BufferPayload			TimeInterval
}

TrafficVolumeMeasSysInfo ::=		SEQUENCE {
	trafficVolumeMeasurementID			MeasurementIdentity			DEFAULT 4,
	trafficVolumeMeasurementObjectList	TrafficVolumeMeasurementObjectList	OPTIONAL,
	trafficVolumeMeasQuantity			TrafficVolumeMeasQuantity			OPTIONAL,
	trafficVolumeReportingQuantity		TrafficVolumeReportingQuantity		OPTIONAL,
	-- dummy is not used in this version of specification, it should
	-- not be sent and if received it should be ignored.
	dummy								TrafficVolumeReportingCriteria		OPTIONAL,
	measurementValidity					MeasurementValidity					OPTIONAL,
	measurementReportingMode			MeasurementReportingMode,
	reportCriteriaSysInf				TrafficVolumeReportCriteriaSysInfo

}

TrafficVolumeMeasuredResults ::=	SEQUENCE {
	rb-Identity							RB-Identity,
	rlc-BuffersPayload					RLC-BuffersPayload					OPTIONAL,
	averageRLC-BufferPayload			AverageRLC-BufferPayload			OPTIONAL,
	varianceOfRLC-BufferPayload			VarianceOfRLC-BufferPayload			OPTIONAL
}

TrafficVolumeMeasuredResultsList ::= SEQUENCE (SIZE (1..maxRB)) OF
										TrafficVolumeMeasuredResults

TrafficVolumeMeasurement ::= 		SEQUENCE {
	trafficVolumeMeasurementObjectList	TrafficVolumeMeasurementObjectList	OPTIONAL,
	trafficVolumeMeasQuantity			TrafficVolumeMeasQuantity			OPTIONAL,
	trafficVolumeReportingQuantity		TrafficVolumeReportingQuantity		OPTIONAL,
	measurementValidity					MeasurementValidity					OPTIONAL,
	reportCriteria						TrafficVolumeReportCriteria
}

TrafficVolumeMeasurementObjectList ::= SEQUENCE (SIZE (1..maxTrCH)) OF
											UL-TrCH-Identity

TrafficVolumeReportCriteria ::=		CHOICE {
	trafficVolumeReportingCriteria		TrafficVolumeReportingCriteria,
	periodicalReportingCriteria			PeriodicalReportingCriteria,
	noReporting							NULL
}

TrafficVolumeReportCriteriaSysInfo ::=	CHOICE {
	trafficVolumeReportingCriteria		TrafficVolumeReportingCriteria,
	periodicalReportingCriteria			PeriodicalReportingCriteria
}

TrafficVolumeReportingCriteria ::= SEQUENCE {
	-- NOTE: transChCriteriaList should be mandatory in later versions of this message
	transChCriteriaList					TransChCriteriaList					OPTIONAL
}

TrafficVolumeReportingQuantity ::= SEQUENCE {
	rlc-RB-BufferPayload				BOOLEAN,
	rlc-RB-BufferPayloadAverage			BOOLEAN,
	rlc-RB-BufferPayloadVariance		BOOLEAN
}

TrafficVolumeThreshold ::=			ENUMERATED {
										th8, th16, th32, th64, th128,
										th256, th512, th1024, th2k, th3k, 
										th4k, th6k, th8k, th12k, th16k, 
										th24k, th32k, th48k, th64k, th96k, 
										th128k, th192k, th256k, th384k, 
										th512k, th768k }

TransChCriteria ::=					SEQUENCE {
	ul-transportChannelID				UL-TrCH-Identity					OPTIONAL,
	eventSpecificParameters				SEQUENCE (SIZE (1..maxMeasParEvent)) OF 
											TrafficVolumeEventParam			OPTIONAL
}

TransChCriteriaList ::=			SEQUENCE (SIZE (1..maxTrCH)) OF
										TransChCriteria

TransferMode ::=					ENUMERATED {
										acknowledgedModeRLC,
										unacknowledgedModeRLC }

TransmittedPowerThreshold ::=		INTEGER (-50..33)

TriggeringCondition1 ::=			ENUMERATED {
										activeSetCellsOnly,
										monitoredSetCellsOnly,
										activeSetAndMonitoredSetCells }

TriggeringCondition2 ::=			ENUMERATED {
										activeSetCellsOnly,
										monitoredSetCellsOnly,
										activeSetAndMonitoredSetCells,
										detectedSetCellsOnly,
										detectedSetAndMonitoredSetCells }

TX-InterruptionAfterTrigger ::=		ENUMERATED {
										txiat0-25, txiat0-5, txiat1,
										txiat2, txiat4, txiat8, txiat16 }

UDRE ::=							ENUMERATED {
										lessThan1,
										between1-and-4,
										between4-and-8,
										over8 }

UE-6AB-Event ::=					SEQUENCE {
	timeToTrigger						TimeToTrigger,
	transmittedPowerThreshold			TransmittedPowerThreshold
}

UE-6FG-Event ::=					SEQUENCE {
	timeToTrigger						TimeToTrigger,
	-- in 1.28 Mcps TDD ue-RX-TX-TimeDifferenceThreshold corresponds to TADV Threshold
	ue-RX-TX-TimeDifferenceThreshold	UE-RX-TX-TimeDifferenceThreshold
}

-- dummy and dummy2 are not used in this version of the specification, they should
-- not be sent and if received the UE behaviour is not specified.
UE-AutonomousUpdateMode ::=			CHOICE {
	dummy								NULL,
	onWithNoReporting					NULL,
	dummy2								RL-InformationLists 
}

UE-InternalEventParam ::=			CHOICE {
	event6a								UE-6AB-Event,
	event6b								UE-6AB-Event,
	event6c								TimeToTrigger,
	event6d								TimeToTrigger,
	event6e								TimeToTrigger,
	event6f								UE-6FG-Event,
	event6g								UE-6FG-Event
}

UE-InternalEventParamList ::=		SEQUENCE (SIZE (1..maxMeasEvent)) OF
										UE-InternalEventParam

UE-InternalEventResults ::=			CHOICE {
	event6a								NULL,
	event6b								NULL,
	event6c								NULL,
	event6d								NULL,
	event6e								NULL,
	event6f								PrimaryCPICH-Info,
	event6g								PrimaryCPICH-Info,
	spare								NULL
}

UE-InternalMeasQuantity ::=			SEQUENCE {
	measurementQuantity					UE-MeasurementQuantity,
	filterCoefficient					FilterCoefficient					DEFAULT fc0
}

UE-InternalMeasuredResults ::=		SEQUENCE {
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			ue-TransmittedPowerFDD				UE-TransmittedPower			OPTIONAL,
			ue-RX-TX-ReportEntryList			UE-RX-TX-ReportEntryList	OPTIONAL
		},
		tdd									SEQUENCE {
			ue-TransmittedPowerTDD-List			UE-TransmittedPowerTDD-List	OPTIONAL,
			appliedTA							UL-TimingAdvance			OPTIONAL
		}
	}
}

UE-InternalMeasuredResults-LCR-r4 ::=	SEQUENCE {
		ue-TransmittedPowerTDD-List			UE-TransmittedPowerTDD-List		OPTIONAL,
		t-ADVinfo							T-ADVinfo						OPTIONAL
}

UE-InternalMeasurement ::=			SEQUENCE {
	ue-InternalMeasQuantity				UE-InternalMeasQuantity				OPTIONAL,
	ue-InternalReportingQuantity		UE-InternalReportingQuantity		OPTIONAL,
	reportCriteria						UE-InternalReportCriteria
}

UE-InternalMeasurement-r4 ::=		SEQUENCE {
	ue-InternalMeasQuantity				UE-InternalMeasQuantity				OPTIONAL,
	ue-InternalReportingQuantity		UE-InternalReportingQuantity-r4		OPTIONAL,
	reportCriteria						UE-InternalReportCriteria
}

UE-InternalMeasurementSysInfo ::= 	SEQUENCE {
	ue-InternalMeasurementID			MeasurementIdentity			DEFAULT 5,
	ue-InternalMeasQuantity				UE-InternalMeasQuantity
}

UE-InternalReportCriteria ::=		CHOICE {
	ue-InternalReportingCriteria		UE-InternalReportingCriteria,
	periodicalReportingCriteria			PeriodicalReportingCriteria,
	noReporting							NULL
}

UE-InternalReportingCriteria ::=	SEQUENCE {
	ue-InternalEventParamList			UE-InternalEventParamList			OPTIONAL
}

UE-InternalReportingQuantity ::=	SEQUENCE {
	ue-TransmittedPower					BOOLEAN,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			ue-RX-TX-TimeDifference				BOOLEAN
		},
		tdd									SEQUENCE {
			appliedTA							BOOLEAN
		}
	}
}

UE-InternalReportingQuantity-r4 ::=	SEQUENCE {
	ue-TransmittedPower					BOOLEAN,
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			ue-RX-TX-TimeDifference				BOOLEAN
		},
		tdd									SEQUENCE {
			tddOption							CHOICE {
				tdd384								SEQUENCE {
					appliedTA							BOOLEAN
				},
				tdd128								SEQUENCE {
					t-ADVinfo							BOOLEAN
				}
			}
		}
	}
}

-- TABULAR: UE-MeasurementQuantity, for 3.84 Mcps TDD only the first two values
-- ue-TransmittedPower and utra-Carrier-RSSI are used.
-- For 1.28 Mcps TDD ue-RX-TX-TimeDifference corresponds to T-ADV in the tabular
UE-MeasurementQuantity ::=			ENUMERATED {
										ue-TransmittedPower,
										utra-Carrier-RSSI,
										ue-RX-TX-TimeDifference }

UE-RX-TX-ReportEntry ::=			SEQUENCE {
	primaryCPICH-Info					PrimaryCPICH-Info,
	ue-RX-TX-TimeDifferenceType1		UE-RX-TX-TimeDifferenceType1
}

UE-RX-TX-ReportEntryList ::=		SEQUENCE (SIZE (1..maxRL)) OF
										UE-RX-TX-ReportEntry

-- SPARE: UE-RX-TX-TimeDifferenceType1, Max = 1280
-- Values above Max are spare
UE-RX-TX-TimeDifferenceType1 ::=			INTEGER (768..1791)


UE-RX-TX-TimeDifferenceType2 ::=	INTEGER (0..8191)

UE-RX-TX-TimeDifferenceType2Info ::=	SEQUENCE {
	ue-RX-TX-TimeDifferenceType2			UE-RX-TX-TimeDifferenceType2,
	neighbourQuality						NeighbourQuality
}

-- In 1.28 Mcps TDD, actual value for
-- T-ADV Threshold = (UE-RX-TX-TimeDifferenceThreshold - 768) * 0.125
UE-RX-TX-TimeDifferenceThreshold ::= INTEGER (768..1280)

UE-TransmittedPower ::=				INTEGER (0..104)

UE-TransmittedPowerTDD-List ::=		SEQUENCE (SIZE (1..maxTS)) OF
										UE-TransmittedPower

UL-TrCH-Identity ::=					CHOICE{
	dch									TransportChannelIdentity,
	-- Note: the reference to CPCH in the element name below is incorrect. The name is not changed
	-- to keep it aligned with R99.
	rachorcpch							NULL,
	usch								TransportChannelIdentity
}

UE-Positioning-Accuracy ::=					BIT STRING (SIZE (7))


UE-Positioning-CipherParameters ::=			SEQUENCE {
	cipheringKeyFlag					BIT STRING (SIZE (1)),
	cipheringSerialNumber				INTEGER (0..65535)
}

UE-Positioning-Error ::=						SEQUENCE {
	errorReason							UE-Positioning-ErrorCause,
	ue-positioning-GPS-additionalAssistanceDataRequest			UE-Positioning-GPS-AdditionalAssistanceDataRequest	OPTIONAL
}

UE-Positioning-ErrorCause ::=					ENUMERATED {
										notEnoughOTDOA-Cells,
										notEnoughGPS-Satellites,
										assistanceDataMissing,
										notAccomplishedGPS-TimingOfCellFrames,
										undefinedError,
										requestDeniedByUser,
										notProcessedAndTimeout,
										referenceCellNotServingCell }

UE-Positioning-EventParam ::=					SEQUENCE {
	reportingAmount						ReportingAmount,
	reportFirstFix						BOOLEAN,
	measurementInterval					UE-Positioning-MeasurementInterval,
	eventSpecificInfo					UE-Positioning-EventSpecificInfo
}

UE-Positioning-EventParamList ::=				SEQUENCE (SIZE (1..maxMeasEvent)) OF
										UE-Positioning-EventParam

UE-Positioning-EventSpecificInfo ::=			CHOICE {
	e7a									ThresholdPositionChange,
	e7b									ThresholdSFN-SFN-Change,
	e7c									ThresholdSFN-GPS-TOW
}

UE-Positioning-GPS-AcquisitionAssistance ::=	SEQUENCE {
	gps-ReferenceTime					INTEGER (0..604799999),
	utran-GPSReferenceTime				UTRAN-GPSReferenceTime			OPTIONAL,
	satelliteInformationList			AcquisitionSatInfoList
}

UE-Positioning-GPS-AdditionalAssistanceDataRequest ::=		SEQUENCE {
	almanacRequest						BOOLEAN,
	utcModelRequest						BOOLEAN,
	ionosphericModelRequest				BOOLEAN,
	navigationModelRequest				BOOLEAN,
	dgpsCorrectionsRequest				BOOLEAN,
	referenceLocationRequest			BOOLEAN,
	referenceTimeRequest				BOOLEAN,
	aquisitionAssistanceRequest			BOOLEAN,
	realTimeIntegrityRequest			BOOLEAN,
	navModelAddDataRequest				UE-Positioning-GPS-NavModelAddDataReq		OPTIONAL
}

UE-Positioning-GPS-Almanac ::=					SEQUENCE {
	wn-a								BIT STRING (SIZE (8)),
	almanacSatInfoList					AlmanacSatInfoList,
	sv-GlobalHealth						BIT STRING (SIZE (364))				OPTIONAL
}

UE-Positioning-GPS-AssistanceData ::=			SEQUENCE {
	ue-positioning-GPS-ReferenceTime				UE-Positioning-GPS-ReferenceTime				OPTIONAL,
	ue-positioning-GPS-ReferenceLocation			ReferenceLocation				OPTIONAL,
	ue-positioning-GPS-DGPS-Corrections				UE-Positioning-GPS-DGPS-Corrections				OPTIONAL,
	ue-positioning-GPS-NavigationModel				UE-Positioning-GPS-NavigationModel				OPTIONAL,
	ue-positioning-GPS-IonosphericModel				UE-Positioning-GPS-IonosphericModel				OPTIONAL,
	ue-positioning-GPS-UTC-Model					UE-Positioning-GPS-UTC-Model					OPTIONAL,
	ue-positioning-GPS-Almanac						UE-Positioning-GPS-Almanac						OPTIONAL,
	ue-positioning-GPS-AcquisitionAssistance		UE-Positioning-GPS-AcquisitionAssistance		OPTIONAL,
	ue-positioning-GPS-Real-timeIntegrity			BadSatList							OPTIONAL,
	-- dummy is not used in this version of the specification, it should
	-- not be sent and if received it should be ignored.
	dummy			UE-Positioning-GPS-ReferenceCellInfo		OPTIONAL
}

UE-Positioning-GPS-DGPS-Corrections ::=		SEQUENCE {
	gps-TOW								INTEGER (0..604799),
	statusHealth						DiffCorrectionStatus,
	dgps-CorrectionSatInfoList			DGPS-CorrectionSatInfoList
}

UE-Positioning-GPS-IonosphericModel ::=		SEQUENCE {
	alfa0								BIT STRING (SIZE (8)),
	alfa1								BIT STRING (SIZE (8)),
	alfa2								BIT STRING (SIZE (8)),
	alfa3								BIT STRING (SIZE (8)),
	beta0								BIT STRING (SIZE (8)),
	beta1								BIT STRING (SIZE (8)),
	beta2								BIT STRING (SIZE (8)),
	beta3								BIT STRING (SIZE (8))
}

UE-Positioning-GPS-MeasurementResults ::=		SEQUENCE {
	referenceTime						CHOICE {
		utran-GPSReferenceTimeResult		UTRAN-GPSReferenceTimeResult,
		gps-ReferenceTimeOnly				INTEGER (0..604799999)
	},
	gps-MeasurementParamList			GPS-MeasurementParamList
}

UE-Positioning-GPS-NavigationModel ::=			SEQUENCE {
	navigationModelSatInfoList			NavigationModelSatInfoList
}

UE-Positioning-GPS-NavModelAddDataReq ::=		SEQUENCE {
	gps-Week							INTEGER (0..1023),
	-- SPARE: gps-Toe, Max = 167
	-- Values above Max are spare
	gps-Toe								INTEGER (0..255),
	-- SPARE: tToeLimit, Max = 10
	-- Values above Max are spare
	tToeLimit							INTEGER (0..15),
	satDataList							SatDataList
}

UE-Positioning-GPS-ReferenceCellInfo ::=		SEQUENCE{
	modeSpecificInfo				CHOICE {
		fdd								SEQUENCE {
			referenceIdentity				PrimaryCPICH-Info
		},
		tdd								SEQUENCE {
			referenceIdentity				CellParametersID
		}
	}
}

UE-Positioning-GPS-ReferenceTime ::=			SEQUENCE {
	gps-Week							INTEGER (0..1023),
	gps-tow-1msec						GPS-TOW-1msec,	utran-GPSReferenceTime				UTRAN-GPSReferenceTime				OPTIONAL,
	sfn-tow-Uncertainty					SFN-TOW-Uncertainty					OPTIONAL,
	utran-GPS-DriftRate					UTRAN-GPS-DriftRate					OPTIONAL,
	gps-TOW-AssistList					GPS-TOW-AssistList					OPTIONAL
}

UE-Positioning-GPS-UTC-Model ::=				SEQUENCE {
	a1									BIT STRING (SIZE (24)),
	a0									BIT STRING (SIZE (32)),
	t-ot								BIT STRING (SIZE (8)),
	wn-t								BIT STRING (SIZE (8)),
	delta-t-LS							BIT STRING (SIZE (8)),
	wn-lsf								BIT STRING (SIZE (8)),
	dn									BIT STRING (SIZE (8)),
	delta-t-LSF							BIT STRING (SIZE (8))
}

UE-Positioning-IPDL-Parameters ::=				SEQUENCE {
	ip-Spacing							IP-Spacing,
	ip-Length							IP-Length,
	ip-Offset							INTEGER (0..9),
	seed								INTEGER (0..63),
	burstModeParameters					BurstModeParameters 		OPTIONAL
}

UE-Positioning-IPDL-Parameters-r4 ::=			SEQUENCE {
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			ip-Spacing							IP-Spacing,
			ip-Length							IP-Length,
			ip-Offset							INTEGER (0..9),
			seed								INTEGER (0..63)
		},
		tdd									SEQUENCE {
			ip-Spacing-TDD						IP-Spacing-TDD,
			ip-slot								INTEGER (0..14),
			ip-Start							INTEGER (0..4095),
			ip-PCCPCG							IP-PCCPCH-r4			OPTIONAL
		}
	},
	burstModeParameters					BurstModeParameters				OPTIONAL
}

UE-Positioning-IPDL-Parameters-TDD-r4-ext ::=	SEQUENCE {
	ip-Spacing							IP-Spacing-TDD,
	ip-slot								INTEGER (0..14),
	ip-Start							INTEGER (0..4095),
	ip-PCCPCG							IP-PCCPCH-r4					OPTIONAL,
	burstModeParameters					BurstModeParameters
}

UE-Positioning-MeasuredResults ::=				SEQUENCE {
	ue-positioning-OTDOA-Measurement				UE-Positioning-OTDOA-Measurement				OPTIONAL,
	ue-positioning-PositionEstimateInfo				UE-Positioning-PositionEstimateInfo						OPTIONAL,
	ue-positioning-GPS-Measurement					UE-Positioning-GPS-MeasurementResults					OPTIONAL,
	ue-positioning-Error							UE-Positioning-Error							OPTIONAL
}

UE-Positioning-MeasuredResults-v390ext ::=		SEQUENCE {
	ue-Positioning-OTDOA-Measurement-v390ext		UE-Positioning-OTDOA-Measurement-v390ext
}

UE-Positioning-Measurement ::=					SEQUENCE {
	ue-positioning-ReportingQuantity				UE-Positioning-ReportingQuantity,
	reportCriteria						UE-Positioning-ReportCriteria,
	ue-positioning-OTDOA-AssistanceData			UE-Positioning-OTDOA-AssistanceData			OPTIONAL,
	ue-positioning-GPS-AssistanceData				UE-Positioning-GPS-AssistanceData				OPTIONAL
}

UE-Positioning-Measurement-v390ext ::=	 		SEQUENCE {
	ue-positioning-ReportingQuantity-v390ext		UE-Positioning-ReportingQuantity-v390ext			OPTIONAL,
	measurementValidity					MeasurementValidity					OPTIONAL,
	ue-positioning-OTDOA-AssistanceData-UEB			UE-Positioning-OTDOA-AssistanceData-UEB		
	OPTIONAL
}

UE-Positioning-Measurement-r4 ::=				SEQUENCE {
	ue-positioning-ReportingQuantity				UE-Positioning-ReportingQuantity-r4,
	measurementValidity								MeasurementValidity						OPTIONAL,
	reportCriteria									UE-Positioning-ReportCriteria,
	ue-positioning-OTDOA-AssistanceData				UE-Positioning-OTDOA-AssistanceData-r4			OPTIONAL,
	ue-positioning-GPS-AssistanceData				UE-Positioning-GPS-AssistanceData				OPTIONAL
}

UE-Positioning-MeasurementEventResults ::=		CHOICE {
	event7a								UE-Positioning-PositionEstimateInfo,
	event7b								UE-Positioning-OTDOA-Measurement,
	event7c								UE-Positioning-GPS-MeasurementResults,
	spare								NULL	
}

UE-Positioning-MeasurementInterval ::=			ENUMERATED {
										e5, e15, e60, e300,
										e900, e1800, e3600, e7200 }

UE-Positioning-MethodType ::=					ENUMERATED {
										ue-Assisted,
										ue-Based,
										ue-BasedPreferred,
										ue-AssistedPreferred }

UE-Positioning-OTDOA-AssistanceData ::=		SEQUENCE {
	ue-positioning-OTDOA-ReferenceCellInfo			UE-Positioning-OTDOA-ReferenceCellInfo				OPTIONAL,
	ue-positioning-OTDOA-NeighbourCellList				UE-Positioning-OTDOA-NeighbourCellList				OPTIONAL
}

UE-Positioning-OTDOA-AssistanceData-r4 ::=	SEQUENCE {
	ue-positioning-OTDOA-ReferenceCellInfo			UE-Positioning-OTDOA-ReferenceCellInfo-r4				OPTIONAL,
	ue-positioning-OTDOA-NeighbourCellList			UE-Positioning-OTDOA-NeighbourCellList-r4				OPTIONAL
}

UE-Positioning-OTDOA-AssistanceData-r4ext ::= SEQUENCE {
	-- In case of TDD these IPDL parameters shall be used for the reference cell instead of
	-- IPDL Parameters in IE UE-Positioning-OTDOA-ReferenceCellInfo
	ue-Positioning-IPDL-Parameters-TDD-r4-ext		UE-Positioning-IPDL-Parameters-TDD-r4-ext	OPTIONAL,
	-- These IPDL parameters shall be used for the neighbour cells in case of TDD instead of
	-- IPDL Parameters in IE UE-Positioning-OTDOA-NeighbourCellInfoList. The cells shall be 
	-- listed in the same order as in IE UE-Positioning-OTDOA-NeighbourCellInfoList
	ue-Positioning-IPDL-Parameters-TDDList-r4-ext	UE-Positioning-IPDL-Parameters-TDDList-r4-ext		OPTIONAL
}

UE-Positioning-OTDOA-AssistanceData-UEB ::=		SEQUENCE {
	ue-positioning-OTDOA-ReferenceCellInfo-UEB			UE-Positioning-OTDOA-ReferenceCellInfo-UEB				OPTIONAL,
	ue-positioning-OTDOA-NeighbourCellList-UEB				UE-Positioning-OTDOA-NeighbourCellList-UEB				OPTIONAL
}

UE-Positioning-IPDL-Parameters-TDDList-r4-ext ::=	SEQUENCE (SIZE (1..maxCellMeas)) OF
											UE-Positioning-IPDL-Parameters-TDD-r4-ext

UE-Positioning-OTDOA-Measurement ::=			SEQUENCE {
	sfn									INTEGER (0..4095),
	modeSpecificInfo				CHOICE {
		fdd								SEQUENCE {
			referenceCellIDentity				PrimaryCPICH-Info,
			ue-RX-TX-TimeDifferenceType2Info	UE-RX-TX-TimeDifferenceType2Info
		},
		tdd									SEQUENCE {
			referenceCellIdentity			CellParametersID
		}
	},
	neighbourList						NeighbourList						OPTIONAL
}

UE-Positioning-OTDOA-Measurement-v390ext ::=			SEQUENCE {
	neighbourList-v390ext						NeighbourList-v390ext
}

UE-Positioning-OTDOA-NeighbourCellInfo ::= SEQUENCE {
	modeSpecificInfo	CHOICE	{
		fdd								SEQUENCE {
			primaryCPICH-Info					PrimaryCPICH-Info
		},
		tdd								SEQUENCE{
			cellAndChannelIdentity				CellAndChannelIdentity
		}
	},
	frequencyInfo						FrequencyInfo						OPTIONAL,
	ue-positioning-IPDL-Paremeters					UE-Positioning-IPDL-Parameters					OPTIONAL,
	sfn-SFN-RelTimeDifference			SFN-SFN-RelTimeDifference1,
	sfn-SFN-Drift						SFN-SFN-Drift 						OPTIONAL,
	searchWindowSize					OTDOA-SearchWindowSize,
	positioningMode 	CHOICE{
		ueBased									SEQUENCE {},
		ueAssisted								SEQUENCE {}
	}
}

UE-Positioning-OTDOA-NeighbourCellInfo-r4 ::= SEQUENCE {
	modeSpecificInfo	CHOICE	{
		fdd								SEQUENCE {
			primaryCPICH-Info					PrimaryCPICH-Info
		},
		tdd								SEQUENCE{
			cellAndChannelIdentity				CellAndChannelIdentity
		}
	},
	frequencyInfo						FrequencyInfo						OPTIONAL,
	ue-positioning-IPDL-Paremeters		UE-Positioning-IPDL-Parameters-r4	OPTIONAL,
	sfn-SFN-RelTimeDifference			SFN-SFN-RelTimeDifference1,
	sfn-Offset-Validity					SFN-Offset-Validity					OPTIONAL,
	sfn-SFN-Drift						SFN-SFN-Drift						OPTIONAL,
	searchWindowSize					OTDOA-SearchWindowSize,
	positioningMode 	CHOICE {
		ueBased									SEQUENCE {
			relativeNorth						INTEGER (-20000..20000)				OPTIONAL,
			relativeEast						INTEGER (-20000..20000)				OPTIONAL,
			relativeAltitude					INTEGER (-4000..4000)				OPTIONAL,
			fineSFN-SFN							FineSFN-SFN							OPTIONAL,
			-- actual value roundTripTime = (IE value * 0.0625) + 876
			roundTripTime						INTEGER (0.. 32766)					OPTIONAL
		},
		ueAssisted								SEQUENCE {}
	}
}

UE-Positioning-OTDOA-NeighbourCellInfo-UEB ::= SEQUENCE {
	modeSpecificInfo	CHOICE	{
		fdd								SEQUENCE {
			primaryCPICH-Info					PrimaryCPICH-Info
		},
		tdd								SEQUENCE{
			cellAndChannelIdentity				CellAndChannelIdentity
		}
	},
	frequencyInfo						FrequencyInfo						OPTIONAL,
	ue-positioning-IPDL-Paremeters		UE-Positioning-IPDL-Parameters		OPTIONAL,
	sfn-SFN-RelTimeDifference			SFN-SFN-RelTimeDifference1,
	sfn-SFN-Drift						SFN-SFN-Drift						OPTIONAL,
	searchWindowSize					OTDOA-SearchWindowSize,
	relativeNorth						INTEGER (-20000..20000)				OPTIONAL,
	relativeEast						INTEGER (-20000..20000)				OPTIONAL,
	relativeAltitude					INTEGER (-4000..4000)				OPTIONAL,
	fineSFN-SFN							FineSFN-SFN,
	-- actual value roundTripTime = (IE value * 0.0625) + 876
	roundTripTime						INTEGER (0..32766)					OPTIONAL
}

UE-Positioning-OTDOA-NeighbourCellList ::= SEQUENCE (SIZE (1..maxCellMeas)) OF
											UE-Positioning-OTDOA-NeighbourCellInfo

UE-Positioning-OTDOA-NeighbourCellList-r4 ::= SEQUENCE (SIZE (1..maxCellMeas)) OF
												UE-Positioning-OTDOA-NeighbourCellInfo-r4

UE-Positioning-OTDOA-NeighbourCellList-UEB ::= SEQUENCE (SIZE (1..maxCellMeas)) OF
											UE-Positioning-OTDOA-NeighbourCellInfo-UEB

UE-Positioning-OTDOA-Quality ::=			SEQUENCE {
	stdResolution						BIT STRING (SIZE (2)),
	numberOfOTDOA-Measurements			BIT STRING (SIZE (3)),
	stdOfOTDOA-Measurements				BIT STRING (SIZE (5))
} 

UE-Positioning-OTDOA-ReferenceCellInfo ::=			SEQUENCE {
	sfn									INTEGER (0..4095)									OPTIONAL,
	modeSpecificInfo CHOICE {
		fdd										SEQUENCE {
			primaryCPICH-Info					PrimaryCPICH-Info
		},
		tdd										SEQUENCE{
			cellAndChannelIdentity				CellAndChannelIdentity
		}
	},
	frequencyInfo						FrequencyInfo						OPTIONAL,
	positioningMode CHOICE {
		ueBased									SEQUENCE {},
		ueAssisted								SEQUENCE {}
	},
	ue-positioning-IPDL-Paremeters				UE-Positioning-IPDL-Parameters	OPTIONAL
}

UE-Positioning-OTDOA-ReferenceCellInfo-r4 ::=	SEQUENCE {
	sfn									INTEGER (0..4095)									OPTIONAL,
	modeSpecificInfo CHOICE {
		fdd										SEQUENCE {
			primaryCPICH-Info					PrimaryCPICH-Info
		},
		tdd										SEQUENCE{
			cellAndChannelIdentity				CellAndChannelIdentity
		}
	},
	frequencyInfo						FrequencyInfo						OPTIONAL,
	positioningMode CHOICE {
		ueBased									SEQUENCE {
			cellPosition								ReferenceCellPosition	OPTIONAL,
			-- actual value roundTripTime = (IE value * 0.0625) + 876
			roundTripTime						INTEGER (0..32766)				OPTIONAL
		},
		ueAssisted								SEQUENCE {}
	},
	ue-positioning-IPDL-Paremeters				UE-Positioning-IPDL-Parameters-r4	OPTIONAL
}

UE-Positioning-OTDOA-ReferenceCellInfo-UEB ::=			SEQUENCE {
	sfn									INTEGER (0..4095)					OPTIONAL,
	modeSpecificInfo CHOICE {
		fdd										SEQUENCE {
			primaryCPICH-Info					PrimaryCPICH-Info
		},
		tdd										SEQUENCE{
			cellAndChannelIdentity				CellAndChannelIdentity
		}
	},
	frequencyInfo						FrequencyInfo						OPTIONAL,
	cellPosition						ReferenceCellPosition				OPTIONAL,
	-- actual value roundTripTime = (IE value * 0.0625) + 876
	roundTripTime						INTEGER (0..32766)					OPTIONAL,
	ue-positioning-IPDL-Paremeters		UE-Positioning-IPDL-Parameters		OPTIONAL
}

UE-Positioning-PositionEstimateInfo ::=					SEQUENCE {
	referenceTime					CHOICE {
		utran-GPSReferenceTimeResult		UTRAN-GPSReferenceTimeResult,
		gps-ReferenceTimeOnly				INTEGER (0..604799999),
		cell-Timing							SEQUENCE {
			sfn											INTEGER (0..4095),
			modeSpecificInfo 				CHOICE {
				fdd									SEQUENCE {
					primaryCPICH-Info					PrimaryCPICH-Info
				},
				tdd									SEQUENCE{
					cellAndChannelIdentity				CellAndChannelIdentity
				}
			}
		}
	},
	positionEstimate					PositionEstimate
}

UE-Positioning-ReportCriteria ::=				CHOICE {
	ue-positioning-ReportingCriteria				UE-Positioning-EventParamList,
	periodicalReportingCriteria			PeriodicalReportingCriteria,
	noReporting							NULL
}

UE-Positioning-ReportingQuantity ::=			SEQUENCE {
	methodType							UE-Positioning-MethodType,
	positioningMethod					PositioningMethod,
	-- dummy1 is not used in this version of specification and it should
	-- be ignored.
	dummy1								UE-Positioning-ResponseTime,
	horizontal-Accuracy					UE-Positioning-Accuracy				OPTIONAL,
	gps-TimingOfCellWanted				BOOLEAN,
	-- dummy2 is not used in this version of specification and it should
	-- be ignored.
	dummy2								BOOLEAN,
	additionalAssistanceDataRequest		BOOLEAN,
	environmentCharacterisation			EnvironmentCharacterisation			OPTIONAL
}

UE-Positioning-ReportingQuantity-v390ext ::=		SEQUENCE {
	vertical-Accuracy							UE-Positioning-Accuracy
}

UE-Positioning-ReportingQuantity-r4 ::=			SEQUENCE {
	methodType							UE-Positioning-MethodType,
	positioningMethod					PositioningMethod,
	horizontalAccuracy					UE-Positioning-Accuracy				OPTIONAL,
	verticalAccuracy					UE-Positioning-Accuracy				OPTIONAL,
	gps-TimingOfCellWanted				BOOLEAN,
	additionalAssistanceDataReq			BOOLEAN,
	environmentCharacterisation			EnvironmentCharacterisation			OPTIONAL
}

UE-Positioning-ResponseTime ::=				ENUMERATED {
										s1, s2, s4, s8, s16,
										s32, s64, s128 }

-- SPARE: UTRA-CarrierRSSI, Max = 76
-- Values above Max are spare
UTRA-CarrierRSSI ::=				INTEGER (0..127)

UTRAN-GPS-DriftRate ::=				ENUMERATED {
									utran-GPSDrift0, utran-GPSDrift1, utran-GPSDrift2,
									utran-GPSDrift5, utran-GPSDrift10, utran-GPSDrift15,
									utran-GPSDrift25, utran-GPSDrift50, utran-GPSDrift-1,
									utran-GPSDrift-2, utran-GPSDrift-5, utran-GPSDrift-10,
									utran-GPSDrift-15, utran-GPSDrift-25, utran-GPSDrift-50}

UTRAN-GPSReferenceTime ::=				SEQUENCE {
	-- For utran-GPSTimingOfCell values above 2322431999999 are not 
	-- used in this version of the specification
	-- Actual value utran-GPSTimingOfCell = (ms-part * 4294967296) + ls-part
	utran-GPSTimingOfCell			SEQUENCE {
		ms-part 						INTEGER (0..1023),
		ls-part							INTEGER (0..4294967295)
	},
	modeSpecificInfo				CHOICE {
		fdd								SEQUENCE {
			referenceIdentity				PrimaryCPICH-Info
		},
		tdd								SEQUENCE {
			referenceIdentity				CellParametersID
		}
	} 				OPTIONAL,
	sfn									INTEGER (0..4095)
}

UTRAN-GPSReferenceTimeResult ::=				SEQUENCE {
	-- For ue-GPSTimingOfCell values above 37158911999999 are not 
	-- used in this version of the specification
	-- Actual value ue-GPSTimingOfCell = (ms-part * 4294967296) + ls-part
	ue-GPSTimingOfCell			SEQUENCE {
		ms-part 						INTEGER (0.. 16383),
		ls-part							INTEGER (0..4294967295)
	},
	modeSpecificInfo				CHOICE {
		fdd								SEQUENCE {
			referenceIdentity				PrimaryCPICH-Info
		},
		tdd								SEQUENCE {
			referenceIdentity				CellParametersID
		}
	},
	sfn									INTEGER (0..4095)
}

VarianceOfRLC-BufferPayload ::=		ENUMERATED {
										plv0, plv4, plv8, plv16, plv32, plv64, 
										plv128, plv256, plv512, plv1024, 
										plv2k, plv4k, plv8k, plv16k, spare2, spare1 }

-- Actual value W = IE value * 0.1
W ::=								INTEGER (0..20)

-- ***************************************************
--
--     OTHER INFORMATION ELEMENTS (10.3.8)
--
-- ***************************************************

BCC ::=								INTEGER (0..7)

BCCH-ModificationInfo ::=			SEQUENCE {
	mib-ValueTag						MIB-ValueTag,
	bcch-ModificationTime				BCCH-ModificationTime				OPTIONAL
}

-- Actual value BCCH-ModificationTime = IE value * 8
BCCH-ModificationTime ::=			INTEGER (0..511)

BSIC ::=							SEQUENCE {
	ncc									NCC,
	bcc									BCC
}

CBS-DRX-Level1Information ::=		SEQUENCE {
	ctch-AllocationPeriod				INTEGER (1..256),
	cbs-FrameOffset						INTEGER (0..255)
}

CDMA2000-Message ::=				SEQUENCE {
	msg-Type							BIT STRING (SIZE (8)),
	payload								BIT STRING (SIZE (1..512))
}

CDMA2000-MessageList ::=				SEQUENCE (SIZE (1..maxInterSysMessages)) OF
											CDMA2000-Message

CDMA2000-UMTS-Frequency-List ::=		SEQUENCE (SIZE (1..maxNumCDMA2000Freqs)) OF
											FrequencyInfoCDMA2000

CellValueTag ::=						INTEGER (1..4)

--Actual value = 2^(IE value) 
ExpirationTimeFactor ::=				INTEGER (1..8)

FDD-UMTS-Frequency-List ::=				SEQUENCE (SIZE (1..maxNumFDDFreqs)) OF
											FrequencyInfoFDD

FrequencyInfoCDMA2000 ::=				SEQUENCE {
											band-Class		BIT STRING (SIZE (5)),
											cdma-Freq		BIT STRING (SIZE(11))
}

GERAN-SystemInfoBlock ::=				OCTET STRING (SIZE (1..23))

GERAN-SystemInformation ::=				SEQUENCE (SIZE (1..maxGERAN-SI)) OF GERAN-SystemInfoBlock

GSM-BA-Range ::= 						SEQUENCE {
											gsmLowRangeUARFCN		UARFCN,
											gsmUpRangeUARFCN		UARFCN
}

GSM-BA-Range-List ::= 					SEQUENCE (SIZE (1..maxNumGSMFreqRanges)) OF
											GSM-BA-Range


-- This IE is formatted as 'TLV' and is coded in the same way as the Mobile Station Classmark 2 
-- information element in [5]. The first octet is the Mobile station classmark 2 IEI and its value
-- shall be set to 33H. The second octet is the Length of mobile station classmark 2 and its value 
-- shall be set to 3. The octet 3 contains the first octet of the value part of the Mobile Station 
-- Classmark 2 information element, the octet 4 contains the second octet of the value part of the 
-- Mobile Station Classmark 2 information element and so on. For each of these octets, the first/
-- leftmost/ most significant bit of the octet contains b8 of the corresponding octet of the Mobile
-- Station Classmark 2.
GSM-Classmark2 ::=					OCTET STRING (SIZE (5))

-- This IE is formatted as 'V' and is coded in the same way as the value part in the Mobile station
-- classmark 3 information element in [5]
-- The value part is specified by means of CSN.1, which encoding results in a bit string, to which
-- final padding may be appended upto the next octet boundary [5]. The first/ leftmost bit of the
-- CSN.1 bit string is placed in the first/ leftmost/ most significant bit of the first
-- octet. This continues until the last bit of the CSN.1 bit string, which is placed in the last/
-- rightmost/ least significant bit of the last octet.
GSM-Classmark3 ::=					OCTET STRING (SIZE (1..32))

GSM-MessageList ::=					SEQUENCE (SIZE (1..maxInterSysMessages)) OF
										BIT STRING (SIZE (1..512))

GSM-MS-RadioAccessCapability ::=	OCTET STRING (SIZE (1..64))

GsmSecurityCapability ::=			BIT STRING {
										-- For each bit value 0 means false/ not supported
										a5-7(0),
										a5-6(1),
									 	a5-5(2),
									 	a5-4(3),
									 	a5-3(4),
									 	a5-2(5),
									 	a5-1(6)
										}	(SIZE (7))

GSMSecurityCapability-v6xyext ::=	BIT STRING {
										-- For each bit value "0" means false/ not supported
										gea0(0),
										gea1(1),
										gea2(2)
										}	(SIZE (3))

GSM-TargetCellInfoList ::=		SEQUENCE (SIZE (1..maxGSMTargetCells)) OF
											GSM-TargetCellInfo


GSM-TargetCellInfo ::= 				SEQUENCE {
	bcch-ARFCN							BCCH-ARFCN,
	frequency-band						Frequency-Band,
	bsic								BSIC			OPTIONAL
}

IdentificationOfReceivedMessage ::=	SEQUENCE {
		rrc-TransactionIdentifier		RRC-TransactionIdentifier,
		receivedMessageType				ReceivedMessageType
}

InterRAT-ChangeFailureCause ::=		CHOICE {
	configurationUnacceptable			NULL,
	physicalChannelFailure				NULL,
	protocolError						ProtocolErrorInformation,
	unspecified							NULL,
	spare4								NULL,
	spare3								NULL,
	spare2								NULL,
	spare1								NULL
}							

GERANIu-MessageList ::=				SEQUENCE (SIZE (1..maxInterSysMessages)) OF
										BIT STRING (SIZE (1..32768))

GERANIu-RadioAccessCapability ::=	BIT STRING (SIZE (1..170))

InterRAT-UE-RadioAccessCapability ::= CHOICE {
	gsm									SEQUENCE {
		gsm-Classmark2						GSM-Classmark2,
		gsm-Classmark3						GSM-Classmark3
	},
	cdma2000							SEQUENCE {
		cdma2000-MessageList				CDMA2000-MessageList
	}
}

InterRAT-UE-RadioAccessCapabilityList ::= 	SEQUENCE (SIZE(1..maxInterSysMessages)) OF
											InterRAT-UE-RadioAccessCapability

InterRAT-UE-RadioAccessCapability-v590ext ::= SEQUENCE {
	geranIu-RadioAccessCapability		GERANIu-RadioAccessCapability
}

InterRAT-UE-RadioAccessCapability-v6xyext ::= SEQUENCE {
	gsm-MS-RadioAccessCapability		GSM-MS-RadioAccessCapability
}

InterRAT-UE-SecurityCapability ::= CHOICE {
	gsm									SEQUENCE {
		gsmSecurityCapability			GsmSecurityCapability
	}
}

InterRAT-UE-SecurityCapList ::= 	SEQUENCE (SIZE(1..maxInterSysMessages)) OF
										InterRAT-UE-SecurityCapability

InterRAT-HO-FailureCause ::=		CHOICE {
	configurationUnacceptable			NULL,
	physicalChannelFailure				NULL,
	protocolError						ProtocolErrorInformation,
	interRAT-ProtocolError				NULL,
	unspecified							NULL,
	spare11								NULL,
	spare10								NULL,
	spare9								NULL,
	spare8								NULL,
	spare7								NULL,
	spare6								NULL,
	spare5								NULL,
	spare4								NULL,
	spare3								NULL,
	spare2								NULL,
	spare1								NULL
}							

MasterInformationBlock ::=			SEQUENCE {
		mib-ValueTag					MIB-ValueTag,
		-- TABULAR: The PLMN identity and ANSI-41 core network information
		-- are included in PLMN-Type.
		plmn-Type						PLMN-Type,
		sibSb-ReferenceList				SIBSb-ReferenceList,
	-- Extension mechanism for non- release99 information
		v6xyNonCriticalExtensions			SEQUENCE {
			masterInformationBlock-v6xyext		MasterInformationBlock-v6xyext,
			nonCriticalExtensions				SEQUENCE {}							OPTIONAL
		}	OPTIONAL
}

MasterInformationBlock-v6xyext ::=	SEQUENCE {
	multiplePLMN-List					MultiplePLMN-List-r6			OPTIONAL
}

MIB-ValueTag ::=					INTEGER (1..8)

NCC ::=								INTEGER (0..7)

PLMN-ValueTag ::=					INTEGER (1..256)


PredefinedConfigIdentityAndValueTag ::=	SEQUENCE {
	predefinedConfigIdentity				PredefinedConfigIdentity,
	predefinedConfigValueTag				PredefinedConfigValueTag
}

ProtocolErrorInformation ::=		SEQUENCE {
	diagnosticsType						CHOICE {
		type1								SEQUENCE {
			protocolErrorCause					ProtocolErrorCause
		},
		spare								NULL
	}
}

ReceivedMessageType ::=				ENUMERATED {
										activeSetUpdate,
										cellChangeOrderFromUTRAN,
										cellUpdateConfirm,
										counterCheck,
										downlinkDirectTransfer,
										interRATHandoverCommand,
										measurementControl,
										pagingType2,
										physicalChannelReconfiguration,
										physicalSharedChannelAllocation,
										radioBearerReconfiguration,
										radioBearerRelease,
										radioBearerSetup,
										rrcConnectionRelease,
										rrcConnectionReject,
										rrcConnectionSetup,
										securityModeCommand,
										signallingConnectionRelease,
										transportChannelReconfiguration,
										transportFormatCombinationControl,
										ueCapabilityEnquiry,
										ueCapabilityInformationConfirm,
										uplinkPhysicalChannelControl,
										uraUpdateConfirm,
										utranMobilityInformation,
										assistanceDataDelivery,
										spare6, spare5, spare4, spare3, spare2,
										spare1
}

Rplmn-Information ::=					SEQUENCE {
											gsm-BA-Range-List		GSM-BA-Range-List	OPTIONAL,
											fdd-UMTS-Frequency-List	FDD-UMTS-Frequency-List	OPTIONAL,
											tdd-UMTS-Frequency-List	TDD-UMTS-Frequency-List	OPTIONAL,
											cdma2000-UMTS-Frequency-List	CDMA2000-UMTS-Frequency-List	OPTIONAL
}

Rplmn-Information-r4 ::=		SEQUENCE {
	gsm-BA-Range-List				GSM-BA-Range-List						OPTIONAL,
	fdd-UMTS-Frequency-List			FDD-UMTS-Frequency-List					OPTIONAL,
	tdd384-UMTS-Frequency-List		TDD-UMTS-Frequency-List					OPTIONAL,
	tdd128-UMTS-Frequency-List		TDD-UMTS-Frequency-List					OPTIONAL,
	cdma2000-UMTS-Frequency-List	CDMA2000-UMTS-Frequency-List			OPTIONAL
}

SchedulingInformation ::=			SEQUENCE {
	scheduling							SEQUENCE {
		segCount							SegCount				 		 DEFAULT 1,
		sib-Pos								CHOICE {
			-- The element name indicates the repetition period and the value
			-- (multiplied by two) indicates the position of the first segment.
			rep4								INTEGER (0..1),
			rep8								INTEGER (0..3),
			rep16								INTEGER (0..7),
			rep32								INTEGER (0..15),
			rep64								INTEGER (0..31),
			rep128								INTEGER (0..63),
			rep256								INTEGER (0..127),
			rep512								INTEGER (0..255),
			rep1024								INTEGER (0..511),
			rep2048								INTEGER (0..1023),
			rep4096								INTEGER (0..2047)
		},
		sib-PosOffsetInfo					SibOFF-List						OPTIONAL
	}
}

SchedulingInformationSIB ::=			SEQUENCE {
	sib-Type							SIB-TypeAndTag,
	scheduling							SchedulingInformation
}

SchedulingInformationSIBSb ::=			SEQUENCE {
	sibSb-Type							SIBSb-TypeAndTag,
	scheduling							SchedulingInformation
}

SegCount ::=						INTEGER (1..16)

SegmentIndex ::=					INTEGER (1..15)

-- Actual value SFN-Prime = 2 * IE value
SFN-Prime ::=						INTEGER (0..2047)


SIB-Data-fixed ::=					BIT STRING (SIZE (222))


SIB-Data-variable ::=				BIT STRING (SIZE (1..214))

SIBOccurIdentity ::=			INTEGER (0..15)

SIBOccurrenceIdentityAndValueTag ::=	SEQUENCE {
	sibOccurIdentity				SIBOccurIdentity,
	sibOccurValueTag				SIBOccurValueTag
}

SIBOccurValueTag ::=			INTEGER (0..15)

SIB-ReferenceList ::=				SEQUENCE (SIZE (1..maxSIB)) OF
										SchedulingInformationSIB

SIBSb-ReferenceList ::=				SEQUENCE (SIZE (1..maxSIB)) OF
										SchedulingInformationSIBSb

SIB-ReferenceListFACH ::=			SEQUENCE (SIZE (1..maxSIB-FACH)) OF 
										SchedulingInformationSIB

SIB-Type ::=						ENUMERATED {
										masterInformationBlock,
										systemInformationBlockType1,
										systemInformationBlockType2,
										systemInformationBlockType3,
										systemInformationBlockType4,
										systemInformationBlockType5,
										systemInformationBlockType6,
										systemInformationBlockType7,
		-- dummy, dummy2 and dummy3 are not used in this version of the specification,
		-- they should not be sent. If they are received they should be ignored
										dummy,
										dummy2,
										dummy3,
										systemInformationBlockType11,
										systemInformationBlockType12,
										systemInformationBlockType13,
										systemInformationBlockType13-1,
										systemInformationBlockType13-2,
										systemInformationBlockType13-3,
										systemInformationBlockType13-4,
										systemInformationBlockType14,
										systemInformationBlockType15,
										systemInformationBlockType15-1,
										systemInformationBlockType15-2,
										systemInformationBlockType15-3,
										systemInformationBlockType16,
										systemInformationBlockType17,
										systemInformationBlockType15-4,
										systemInformationBlockType18,
										schedulingBlock1,
										schedulingBlock2,
										systemInformationBlockType15-5,
										systemInformationBlockType5bis, 
										spare1 }

SIB-TypeAndTag ::=					CHOICE {
	sysInfoType1						PLMN-ValueTag,
	sysInfoType2						CellValueTag,
	sysInfoType3						CellValueTag,
	sysInfoType4						CellValueTag,
	sysInfoType5						CellValueTag,
	sysInfoType6						CellValueTag,
	sysInfoType7						NULL,
	-- dummy, dummy2 and dummy3 are not used in this version of the specification,
	-- they should not be sent. If they are received they should be ignored
	dummy								CellValueTag,
	dummy2								NULL,
	dummy3								NULL,
	sysInfoType11						CellValueTag,
	sysInfoType12 						CellValueTag,
	sysInfoType13						CellValueTag,
	sysInfoType13-1						CellValueTag, 
	sysInfoType13-2						CellValueTag,
	sysInfoType13-3						CellValueTag,
	sysInfoType13-4						CellValueTag,
	sysInfoType14						NULL,
	sysInfoType15						CellValueTag,
	sysInfoType16						PredefinedConfigIdentityAndValueTag,
	sysInfoType17						NULL,
	sysInfoType15-1						CellValueTag,
	sysInfoType15-2						SIBOccurrenceIdentityAndValueTag,
	sysInfoType15-3						SIBOccurrenceIdentityAndValueTag,
	sysInfoType15-4						CellValueTag,
	sysInfoType18						CellValueTag,
	sysInfoType15-5						CellValueTag,
	sysInfoType5bis						CellValueTag,
	spare4								NULL,
	spare3								NULL,
	spare2								NULL,
	spare1								NULL
}

SIBSb-TypeAndTag ::=					CHOICE {
	sysInfoType1						PLMN-ValueTag,
	sysInfoType2						CellValueTag,
	sysInfoType3						CellValueTag,
	sysInfoType4						CellValueTag,
	sysInfoType5						CellValueTag,
	sysInfoType6						CellValueTag,
	sysInfoType7						NULL,
	-- dummy, dummy2 and dummy3 are not used in this version of the specification,
	-- they should not be sent. If they are received they should be ignored
	dummy								CellValueTag,
	dummy2								NULL,
	dummy3								NULL,
	sysInfoType11						CellValueTag,
	sysInfoType12 						CellValueTag,
	sysInfoType13						CellValueTag,
	sysInfoType13-1						CellValueTag, 
	sysInfoType13-2						CellValueTag,
	sysInfoType13-3						CellValueTag,
	sysInfoType13-4						CellValueTag,
	sysInfoType14						NULL,
	sysInfoType15						CellValueTag,
	sysInfoType16						PredefinedConfigIdentityAndValueTag,
	sysInfoType17						NULL,
	sysInfoTypeSB1						CellValueTag,
	sysInfoTypeSB2						CellValueTag,
	sysInfoType15-1						CellValueTag,
	sysInfoType15-2						SIBOccurrenceIdentityAndValueTag,
	sysInfoType15-3						SIBOccurrenceIdentityAndValueTag,
	sysInfoType15-4						CellValueTag,
	sysInfoType18						CellValueTag,
	sysInfoType15-5						CellValueTag,
	sysInfoType5bis						CellValueTag,
	spare2								NULL,
	spare1								NULL
}

SibOFF ::=							ENUMERATED {
										so2, so4, so6, so8, so10,
										so12, so14, so16, so18,
										so20, so22, so24, so26,
										so28, so30, so32 }

SibOFF-List ::=						SEQUENCE (SIZE (1..15)) OF
										SibOFF

SysInfoType1 ::=					SEQUENCE {
	-- Core network IEs
		cn-CommonGSM-MAP-NAS-SysInfo	NAS-SystemInformationGSM-MAP,	
		cn-DomainSysInfoList			CN-DomainSysInfoList,
	-- User equipment IEs
		ue-ConnTimersAndConstants		UE-ConnTimersAndConstants			OPTIONAL,
		ue-IdleTimersAndConstants		UE-IdleTimersAndConstants			OPTIONAL,
	-- Extension mechanism for non- release99 information
		v3a0NonCriticalExtensions		SEQUENCE {
			sysInfoType1-v3a0ext		SysInfoType1-v3a0ext-IEs,
			nonCriticalExtensions		SEQUENCE {} OPTIONAL
		}							OPTIONAL
}

SysInfoType1-v3a0ext-IEs ::= SEQUENCE {
	ue-ConnTimersAndConstants-v3a0ext		UE-ConnTimersAndConstants-v3a0ext,
	ue-IdleTimersAndConstants-v3a0ext		UE-IdleTimersAndConstants-v3a0ext
}

SysInfoType2 ::=					SEQUENCE {
	-- UTRAN mobility IEs
		ura-IdentityList				URA-IdentityList,
	-- Extension mechanism for non- release99 information
		nonCriticalExtensions			SEQUENCE {}							OPTIONAL
}

SysInfoType3 ::=					SEQUENCE {
		sib4indicator					BOOLEAN,
	-- UTRAN mobility IEs
		cellIdentity					CellIdentity,
		cellSelectReselectInfo			CellSelectReselectInfoSIB-3-4,
		cellAccessRestriction			CellAccessRestriction,
	-- Extension mechanism for non- release99 information
		v4b0NonCriticalExtensions		SEQUENCE { 
			sysInfoType3-v4b0ext			SysInfoType3-v4b0ext-IEs,
			v590NonCriticalExtension		SEQUENCE {
				sysInfoType3-v590ext			SysInfoType3-v590ext,
				v5c0NoncriticalExtension		SEQUENCE {
					sysInfoType3-v5c0ext			SysInfoType3-v5c0ext-IEs,
					v670NonCriticalExtension			SEQUENCE {
						sysInfoType3-v670ext				SysInfoType3-v670ext,
						nonCriticalExtensions			SEQUENCE {}						OPTIONAL
					}							OPTIONAL
				}							OPTIONAL
			} 							OPTIONAL
		}							OPTIONAL
}

SysInfoType3-v4b0ext-IEs ::= SEQUENCE {
	mapping-LCR						Mapping-LCR-r4							OPTIONAL
}

SysInfoType3-v590ext ::= SEQUENCE {
	cellSelectReselectInfo-v590ext		CellSelectReselectInfo-v590ext 		OPTIONAL
}

SysInfoType3-v5c0ext-IEs ::= SEQUENCE {
	cellSelectReselectInfoTreselectionScaling-v5c0ext
										CellSelectReselectInfoTreselectionScaling-v5c0ext	OPTIONAL
}

SysInfoType3-v670ext ::= SEQUENCE {
	 	domainSpecificAccessRestrictionParametersForPLMNOfMIB
									DomainSpecificAccessRestrictionParam-v670ext	OPTIONAL,
		domainSpecificAccessRestictionForSharedNetwork
									DomainSpecificAccessRestrictionForSharedNetwork-v670ext	OPTIONAL
}

SysInfoType4 ::=					SEQUENCE {
	-- UTRAN mobility IEs
		cellIdentity					CellIdentity,
		cellSelectReselectInfo			CellSelectReselectInfoSIB-3-4,
		cellAccessRestriction			CellAccessRestriction,
	-- Extension mechanism for non- release99 information
		v4b0NonCriticalExtensions		SEQUENCE { 
			sysInfoType4-v4b0ext			SysInfoType4-v4b0ext-IEs,
			v590NonCriticalExtension		SEQUENCE {
				sysInfoType4-v590ext			SysInfoType4-v590ext,
				v5b0NonCriticalExtension		SEQUENCE {
					sysInfoType4-v5b0ext			SysInfoType4-v5b0ext-IEs,
					v5c0NonCriticalExtension			SEQUENCE {
						sysInfoType4-v5c0ext				SysInfoType4-v5c0ext-IEs,
						nonCriticalExtensions			SEQUENCE {}						OPTIONAL
					}	OPTIONAL
				}	OPTIONAL
			}	OPTIONAL
		}	OPTIONAL
}

SysInfoType4-v4b0ext-IEs ::= SEQUENCE {
	mapping-LCR						Mapping-LCR-r4							OPTIONAL
}


SysInfoType4-v590ext ::= SEQUENCE {
	cellSelectReselectInfo-v590ext		CellSelectReselectInfo-v590ext 		OPTIONAL
}

SysInfoType4-v5b0ext-IEs ::= SEQUENCE {
	cellSelectReselectInfoPCHFACH-v5b0ext	CellSelectReselectInfoPCHFACH-v5b0ext 		OPTIONAL
}

SysInfoType4-v5c0ext-IEs ::= SEQUENCE {
	cellSelectReselectInfoTreselectionScaling-v5c0ext
										CellSelectReselectInfoTreselectionScaling-v5c0ext	OPTIONAL
}

SysInfoType5 ::=					SEQUENCE {
		sib6indicator					BOOLEAN,
	-- Physical channel IEs
		pich-PowerOffset				PICH-PowerOffset,
		modeSpecificInfo				CHOICE {
			fdd								SEQUENCE {
				aich-PowerOffset				AICH-PowerOffset
			},
			tdd								SEQUENCE {
	-- If PDSCH/PUSCH is configured for 1.28Mcps TDD, the following IEs should be absent
	--   and the info included in the tdd128SpecificInfo instead.
	-- If PDSCH/PUSCH is configured for 3.84Mcps TDD in R5, HCR-r5-SpecificInfo should also be 
	-- included. 
				pusch-SysInfoList-SFN			PUSCH-SysInfoList-SFN		OPTIONAL,
				pdsch-SysInfoList-SFN			PDSCH-SysInfoList-SFN		OPTIONAL,
				openLoopPowerControl-TDD		OpenLoopPowerControl-TDD
			}
		},
		primaryCCPCH-Info				PrimaryCCPCH-Info					OPTIONAL,
		prach-SystemInformationList		PRACH-SystemInformationList,
		sCCPCH-SystemInformationList	SCCPCH-SystemInformationList,
		-- cbs-DRX-Level1Information is conditional on any of the CTCH indicator IEs in
		-- sCCPCH-SystemInformationList
		cbs-DRX-Level1Information		CBS-DRX-Level1Information			OPTIONAL,
	-- Extension mechanism for non- release99 information
		v4b0NonCriticalExtensions		SEQUENCE {
			sysInfoType5-v4b0ext			SysInfoType5-v4b0ext-IEs		OPTIONAL,
		-- Extension mechanism for non- rel-4 information
			v590NonCriticalExtensions		SEQUENCE {
				sysInfoType5-v590ext			SysInfoType5-v590ext-IEs		OPTIONAL,
				v650NonCriticalExtensions		SEQUENCE {
					sysInfoType5-v650ext			SysInfoType5-v650ext-IEs		OPTIONAL,
					v680NonCriticalExtensions		SEQUENCE {
						sysInfoType5-v680ext			SysInfoType5-v680ext-IEs		OPTIONAL,
						v6xyNonCriticalExtensions		SEQUENCE {
							sysInfoType5-v6xyext			SysInfoType5-v6xyext-IEs,
							nonCriticalExtensions			SEQUENCE {}						OPTIONAL
						}		OPTIONAL
					}		OPTIONAL
				}		OPTIONAL
			}		OPTIONAL
		}		OPTIONAL
}

SysInfoType5-v4b0ext-IEs ::= SEQUENCE {
	--The following IE PNBSCH-Allocation-r4 shall be used for 3.84Mcps TDD only.
	pNBSCH-Allocation-r4 			PNBSCH-Allocation-r4			OPTIONAL,
	-- In case of TDD, the following IE is included instead of the
	-- IE up-IPDL-Parameter in up-OTDOA-AssistanceData.
	openLoopPowerControl-IPDL-TDD	OpenLoopPowerControl-IPDL-TDD-r4	OPTIONAL,
-- If SysInfoType5 is sent to describe a 1.28Mcps TDD cell, the IE PRACH-RACH-Info included in
-- PRACH-SystemInformationList shall be ignored, the IE PRACH-Partitioning and the 
-- IE rach-TransportFormatSet shall be absent and the corresponding IE in the following 
-- PRACH-SystemInformationList-LCR-r4 shall be used
	prach-SystemInformationList-LCR-r4	PRACH-SystemInformationList-LCR-r4	OPTIONAL, 
	tdd128SpecificInfo				SEQUENCE {
		pusch-SysInfoList-SFN			PUSCH-SysInfoList-SFN-LCR-r4	OPTIONAL,
		pdsch-SysInfoList-SFN			PDSCH-SysInfoList-SFN-LCR-r4	OPTIONAL,
		pCCPCH-LCR-Extensions			PrimaryCCPCH-Info-LCR-r4-ext	OPTIONAL,
		sCCPCH-LCR-ExtensionsList		SCCPCH-SystemInformationList-LCR-r4-ext
	}																OPTIONAL,
	frequencyBandIndicator			RadioFrequencyBandFDD			OPTIONAL
}

SysInfoType5-v590ext-IEs ::= SEQUENCE {
	hcr-r5-SpecificInfo				SEQUENCE {
		pusch-SysInfoList-SFN			PUSCH-SysInfoList-SFN-HCR-r5	OPTIONAL,
		pdsch-SysInfoList-SFN			PDSCH-SysInfoList-SFN-HCR-r5	OPTIONAL
	}																	OPTIONAL
}

SysInfoType5-v650ext-IEs ::= SEQUENCE {
	frequencyBandIndicator2			RadioFrequencyBandFDD2
}

SysInfoType5-v680ext-IEs ::= SEQUENCE {
	-- TABULAR: HSDPA Cell Indicator is MD in tabular description
	-- Default value is HSDPA Capability not indicated
	hsdpa-CellIndicator		ENUMERATED { hsdpa-CapableCell }			OPTIONAL
}

SysInfoType5-v6xyext-IEs ::=		SEQUENCE {
	-- TABULAR: E-DCH Cell Indicator is MD in tabular description
	-- Default value is E-DCH Capability not indicated
	edch-CellIndicator					ENUMERATED { edch-CapableCell }		OPTIONAL,
	sccpch-SystemInformation-MBMS		CHOICE {
		mcchOnSCCPCHusedForNonMBMS			MBMS-MCCH-ConfigurationInfo-r6,
		mcchOnSCCPCHusedOnlyForMBMS			SCCPCH-SystemInformation-MBMS-r6
	}		OPTIONAL,
	additionalPRACH-TF-and-TFCS-CCCH-List	AdditionalPRACH-TF-and-TFCS-CCCH-List	OPTIONAL
}

-- SysInfoType5bis uses the same structure as SysInfoType5
SysInfoType5bis ::= SysInfoType5

SysInfoType6 ::=					SEQUENCE {
	-- Physical channel IEs
		pich-PowerOffset				PICH-PowerOffset,
		modeSpecificInfo				CHOICE {
			fdd								SEQUENCE {
				aich-PowerOffset				AICH-PowerOffset,
				-- dummy is not used in this version of specification, it should
				-- not be sent and if received it should be ignored.
				dummy							CSICH-PowerOffset			OPTIONAL
			},
			tdd								SEQUENCE {
				-- If PDSCH/PUSCH is configured for 1.28Mcps TDD, pusch-SysInfoList-SFN,
				-- pdsch-SysInfoList-SFN and openLoopPowerControl-TDD should be absent
				-- and the info included in the tdd128SpecificInfo instead.
				-- If PDSCH/PUSCH is configured for 3.84Mcps TDD in R5, HCR-r5-SpecificInfo should 
				-- also be included.
				pusch-SysInfoList-SFN			PUSCH-SysInfoList-SFN		OPTIONAL,
				pdsch-SysInfoList-SFN			PDSCH-SysInfoList-SFN		OPTIONAL,
				openLoopPowerControl-TDD		OpenLoopPowerControl-TDD
			}
		},
		primaryCCPCH-Info				PrimaryCCPCH-Info					OPTIONAL,
		prach-SystemInformationList		PRACH-SystemInformationList			OPTIONAL,
		sCCPCH-SystemInformationList	SCCPCH-SystemInformationList		OPTIONAL,
		cbs-DRX-Level1Information		CBS-DRX-Level1Information			OPTIONAL,
		-- Conditional on any of the CTCH indicator IEs in
		-- sCCPCH-SystemInformationList
	-- Extension mechanism for non- release99 information
		v4b0NonCriticalExtensions		SEQUENCE {
			sysInfoType6-v4b0ext			SysInfoType6-v4b0ext-IEs		OPTIONAL,
		-- Extension mechanism for non- rel-4 information
			v590NonCriticalExtensions	SEQUENCE {
				sysInfoType6-v590ext			SysInfoType6-v590ext-IEs		OPTIONAL,
				v650nonCriticalExtensions		SEQUENCE {
					sysInfoType6-v650ext			SysInfoType6-v650ext-IEs		OPTIONAL,
					v6xynonCriticalExtensions		SEQUENCE {
						sysInfoType6-v6xyext			SysInfoType6-v6xyext-IEs,
						nonCriticalExtensions			SEQUENCE {}						OPTIONAL
					}							OPTIONAL
				}							OPTIONAL
			}							OPTIONAL
		}							OPTIONAL
}

SysInfoType6-v4b0ext-IEs ::= SEQUENCE {
	-- openLoopPowerControl-IPDL-TDD is present only if IPDLs are applied for TDD
	openLoopPowerControl-IPDL-TDD	OpenLoopPowerControl-IPDL-TDD-r4	OPTIONAL,
	-- If SysInfoType6 is sent to describe a 1.28Mcps TDD cell, the IE PRACH-RACH-Info included
	-- in PRACH-SystemInformationList shall be ignored, the IE PRACH-Partitioning and the 
	-- IE rach-TransportFormatSet shall be absent and the corresponding IEs in the following 
	-- PRACH-SystemInformationList-LCR-r4 shall be used
	prach-SystemInformationList-LCR-r4	PRACH-SystemInformationList-LCR-r4	OPTIONAL, 
	tdd128SpecificInfo				SEQUENCE {
		pusch-SysInfoList-SFN			PUSCH-SysInfoList-SFN-LCR-r4	OPTIONAL,
		pdsch-SysInfoList-SFN			PDSCH-SysInfoList-SFN-LCR-r4	OPTIONAL,
		pCCPCH-LCR-Extensions			PrimaryCCPCH-Info-LCR-r4-ext	OPTIONAL,
		sCCPCH-LCR-ExtensionsList		SCCPCH-SystemInformationList-LCR-r4-ext	OPTIONAL
	}																OPTIONAL,
	frequencyBandIndicator			RadioFrequencyBandFDD			OPTIONAL
}

SysInfoType6-v590ext-IEs ::= SEQUENCE {
	hcr-r5-SpecificInfo				SEQUENCE {
		pusch-SysInfoList-SFN			PUSCH-SysInfoList-SFN-HCR-r5	OPTIONAL,
		pdsch-SysInfoList-SFN			PDSCH-SysInfoList-SFN-HCR-r5	OPTIONAL
	}																	OPTIONAL
}

SysInfoType6-v650ext-IEs ::= SEQUENCE {
	frequencyBandIndicator2			RadioFrequencyBandFDD2
}

SysInfoType6-v6xyext-IEs ::= SEQUENCE {
	additionalPRACH-TF-and-TFCS-CCCH-List	AdditionalPRACH-TF-and-TFCS-CCCH-List	OPTIONAL
}

SysInfoType7 ::=					SEQUENCE {
	-- Physical channel IEs
		modeSpecificInfo				CHOICE {
			fdd								SEQUENCE {
				ul-Interference					UL-Interference
			},
			tdd								NULL
		},
		prach-Information-SIB5-List		DynamicPersistenceLevelList,
		prach-Information-SIB6-List		DynamicPersistenceLevelList			OPTIONAL,
		expirationTimeFactor			ExpirationTimeFactor				OPTIONAL,
	-- Extension mechanism for non- release99 information
		nonCriticalExtensions			SEQUENCE {}							OPTIONAL
}

-- This IE is not used in this version of the specification.
-- It was kept only for backwards compatibility reasons
SysInfoType8 ::=					SEQUENCE {
	-- User equipment IEs
		-- dummy1, dummy2, dummy3 are not used in this version of the specification and
		-- they should be ignored by the receiver.
		dummy1							CPCH-Parameters,
	-- Physical channel IEs
		dummy2							CPCH-SetInfoList,
		dummy3							CSICH-PowerOffset,
	-- Extension mechanism for non- release99 information
		nonCriticalExtensions			SEQUENCE {}							OPTIONAL
}

-- This IE is not used in this version of the specification.
-- It was kept only for backwards compatibility reasons
SysInfoType9 ::=					SEQUENCE {
	-- Physical channel IEs
		-- dummy is not used in this version of the specification and
		-- it should be ignored by the receiver.
		dummy							CPCH-PersistenceLevelsList,
	-- Extension mechanism for non- release99 information
		nonCriticalExtensions			SEQUENCE {}							OPTIONAL
}

-- This IE is not used in this version of the specification.
-- It was kept only for backwards compatibility reasons
SysInfoType10 ::=					SEQUENCE {
	-- User equipment IEs
		-- dummy is not used in this version of the specification, it should
		-- not be sent and if received it should be ignored.
		dummy							DRAC-SysInfoList,
	-- Extension mechanism for non- release99 information
		nonCriticalExtensions			SEQUENCE {}							OPTIONAL
}

SysInfoType11 ::=					SEQUENCE {
		sib12indicator					BOOLEAN,
	-- Measurement IEs
		fach-MeasurementOccasionInfo	FACH-MeasurementOccasionInfo		OPTIONAL,
		measurementControlSysInfo		MeasurementControlSysInfo,
	-- Extension mechanism for non- release99 information
		v4b0NonCriticalExtensions		SEQUENCE {
			sysInfoType11-v4b0ext			SysInfoType11-v4b0ext-IEs		OPTIONAL,
			v590NonCriticalExtension		SEQUENCE {
				sysInfoType11-v590ext			SysInfoType11-v590ext-IEs,
				v6xyNonCriticalExtensions			SEQUENCE {
					sysInfoType11-v6xyext			SysInfoType11-v6xyext-IEs,
					nonCriticalExtensions			SEQUENCE {}						OPTIONAL
				}							OPTIONAL
			}							OPTIONAL
		}							OPTIONAL
}

SysInfoType11-v4b0ext-IEs ::= SEQUENCE {
	fach-MeasurementOccasionInfo-LCR-Ext	FACH-MeasurementOccasionInfo-LCR-r4-ext	OPTIONAL,
	measurementControlSysInfo-LCR			MeasurementControlSysInfo-LCR-r4-ext
}

SysInfoType11-v590ext-IEs ::= SEQUENCE {
	--The order of the list corresponds to the order of cell in newIntraFrequencyCellInfoList
	newIntraFrequencyCellInfoList-v590ext	SEQUENCE (SIZE (1..maxCellMeas)) OF
												CellSelectReselectInfo-v590ext	OPTIONAL,
	--The order of the list corresponds to the order of cell in newInterFrequencyCellInfoList
	newInterFrequencyCellInfoList-v590ext	SEQUENCE (SIZE (1..maxCellMeas)) OF
												CellSelectReselectInfo-v590ext	OPTIONAL,
	--The order of the list corresponds to the order of cell in newInterRATCellInfoList
	newInterRATCellInfoList-v590ext			SEQUENCE (SIZE (1..maxCellMeas)) OF
												CellSelectReselectInfo-v590ext	OPTIONAL,
	intraFreqEventCriteriaList-v590ext		Intra-FreqEventCriteriaList-v590ext		OPTIONAL,
	intraFreqReportingCriteria-1b-r5		IntraFreqReportingCriteria-1b-r5	OPTIONAL,
	intraFreqEvent-1d-r5					IntraFreqEvent-1d-r5				OPTIONAL
}

SysInfoType11-v6xyext-IEs ::= SEQUENCE {
	-- Measurement IEs
	interFreqRACHReportingInfo			InterFreqRACHReportingInfo			OPTIONAL
}

SysInfoType12 ::=					SEQUENCE {
	-- Measurement IEs
		fach-MeasurementOccasionInfo	FACH-MeasurementOccasionInfo		OPTIONAL,
		measurementControlSysInfo		MeasurementControlSysInfo,
	-- Extension mechanism for non- release99 information
		v4b0NonCriticalExtensions		SEQUENCE {
			sysInfoType12-v4b0ext			SysInfoType12-v4b0ext-IEs		OPTIONAL,
			v590NonCriticalExtension		SEQUENCE {
				sysInfoType12-v590ext			SysInfoType12-v590ext-IEs,
				v6xyNonCriticalExtensions			SEQUENCE {
					sysInfoType12-v6xyext			SysInfoType12-v6xyext-IEs,
					nonCriticalExtensions			SEQUENCE {}						OPTIONAL
				}							OPTIONAL
			}							OPTIONAL
		}							OPTIONAL
}

SysInfoType12-v4b0ext-IEs ::= SEQUENCE {
	fach-MeasurementOccasionInfo-LCR-Ext	FACH-MeasurementOccasionInfo-LCR-r4-ext	OPTIONAL,
	measurementControlSysInfo-LCR			MeasurementControlSysInfo-LCR-r4-ext
}

SysInfoType12-v590ext-IEs ::= SEQUENCE {
	--The order of the list corresponds to the order of cell in newIntraFrequencyCellInfoList
	newIntraFrequencyCellInfoList-v590ext	SEQUENCE (SIZE (1..maxCellMeas)) OF
												CellSelectReselectInfo-v590ext	OPTIONAL,
	--The order of the list corresponds to the order of cell in newInterFrequencyCellInfoList
	newInterFrequencyCellInfoList-v590ext	SEQUENCE (SIZE (1..maxCellMeas)) OF
												CellSelectReselectInfo-v590ext	OPTIONAL,
	--The order of the list corresponds to the order of cell in newInterRATCellInfoList
	newInterRATCellInfoList-v590ext			SEQUENCE (SIZE (1..maxCellMeas)) OF
												CellSelectReselectInfo-v590ext	OPTIONAL,
	intraFreqEventCriteriaList-v590ext		Intra-FreqEventCriteriaList-v590ext		OPTIONAL,
	intraFreqReportingCriteria-1b-r5		IntraFreqReportingCriteria-1b-r5	OPTIONAL,
	intraFreqEvent-1d-r5					IntraFreqEvent-1d-r5				OPTIONAL
}

SysInfoType12-v6xyext-IEs ::= SEQUENCE {
	-- Measurement IEs
	interFreqRACHReportingInfo			InterFreqRACHReportingInfo			OPTIONAL
}

SysInfoType13 ::=					SEQUENCE {
	-- Core network IEs
		cn-DomainSysInfoList			CN-DomainSysInfoList,
	-- User equipment IEs
		ue-IdleTimersAndConstants		UE-IdleTimersAndConstants			OPTIONAL,
		capabilityUpdateRequirement		CapabilityUpdateRequirement			OPTIONAL,
	-- Extension mechanism for non- release99 information
		v3a0NonCriticalExtensions			SEQUENCE { 
			sysInfoType13-v3a0ext			SysInfoType13-v3a0ext-IEs,
			v4b0NonCriticalExtensions		SEQUENCE {
				sysInfoType13-v4b0ext			SysInfoType13-v4b0ext-IEs,
			-- Extension mechanism for non- release99 information
				nonCriticalExtensions			SEQUENCE {}						OPTIONAL
			}							OPTIONAL
		}							OPTIONAL
}

SysInfoType13-v3a0ext-IEs ::= SEQUENCE {
	ue-IdleTimersAndConstants-v3a0ext		UE-IdleTimersAndConstants-v3a0ext
}

SysInfoType13-v4b0ext-IEs ::= SEQUENCE {
	capabilityUpdateRequirement-r4Ext	CapabilityUpdateRequirement-r4-ext	OPTIONAL
}

SysInfoType13-1 ::=					SEQUENCE {
	-- ANSI-41 IEs
		ansi-41-RAND-Information		ANSI-41-RAND-Information,
	-- Extension mechanism for non- release99 information
		nonCriticalExtensions			SEQUENCE {}							OPTIONAL
}

SysInfoType13-2 ::=					SEQUENCE {
	-- ANSI-41 IEs
		ansi-41-UserZoneID-Information	ANSI-41-UserZoneID-Information,
	-- Extension mechanism for non- release99 information
		nonCriticalExtensions			SEQUENCE {}							OPTIONAL
}

SysInfoType13-3 ::=					SEQUENCE {
	-- ANSI-41 IEs
		ansi-41-PrivateNeighbourListInfo ANSI-41-PrivateNeighbourListInfo,
	-- Extension mechanism for non- release99 information
		nonCriticalExtensions			SEQUENCE {}							OPTIONAL
}

SysInfoType13-4 ::=					SEQUENCE {
	-- ANSI-41 IEs
		ansi-41-GlobalServiceRedirectInfo
										ANSI-41-GlobalServiceRedirectInfo,
	-- Extension mechanism for non- release99 information
		nonCriticalExtensions			SEQUENCE {}							OPTIONAL
}

SysInfoType14 ::=					SEQUENCE {
	-- Physical channel IEs
		individualTS-InterferenceList	IndividualTS-InterferenceList,
		expirationTimeFactor			ExpirationTimeFactor				OPTIONAL,
	-- Extension mechanism for non- release99 information
		nonCriticalExtensions			SEQUENCE {}							OPTIONAL
}

SysInfoType15 ::=					SEQUENCE {
	-- Measurement IEs
		
		ue-positioning-GPS-CipherParameters		UE-Positioning-CipherParameters		OPTIONAL,
		ue-positioning-GPS-ReferenceLocation	ReferenceLocation,
		ue-positioning-GPS-ReferenceTime		UE-Positioning-GPS-ReferenceTime,

		ue-positioning-GPS-Real-timeIntegrity		BadSatList							OPTIONAL,
	-- Extension mechanism for non- release99 information
		v4b0NonCriticalExtensions			SEQUENCE { 
			sysInfoType15-v4b0ext				SysInfoType15-v4b0ext-IEs,
		-- Extension mechanism for non- release4 information
			nonCriticalExtensions				SEQUENCE {}				OPTIONAL
		}	OPTIONAL
}

SysInfoType15-v4b0ext-IEs ::= SEQUENCE {
	up-Ipdl-Parameters-TDD			UE-Positioning-IPDL-Parameters-TDD-r4-ext	OPTIONAL
}

SysInfoType15-1 ::=					SEQUENCE {
	-- DGPS corrections
		ue-positioning-GPS-DGPS-Corrections			UE-Positioning-GPS-DGPS-Corrections,

	-- Extension mechanism for non- release99 information
		nonCriticalExtensions			SEQUENCE {}				OPTIONAL
} 

SysInfoType15-2 ::=					SEQUENCE {
	-- Ephemeris and clock corrections
		transmissionTOW					INTEGER (0..604799),
		satID							SatID,
		ephemerisParameter				EphemerisParameter,

	-- Extension mechanism for non- release99 information
		nonCriticalExtensions			SEQUENCE {}			OPTIONAL
} 

SysInfoType15-3 ::=					SEQUENCE {
	-- Almanac and other data
		transmissionTOW					INTEGER (0.. 604799),
		ue-positioning-GPS-Almanac					UE-Positioning-GPS-Almanac				OPTIONAL,
		ue-positioning-GPS-IonosphericModel			UE-Positioning-GPS-IonosphericModel		OPTIONAL,
		ue-positioning-GPS-UTC-Model				UE-Positioning-GPS-UTC-Model			OPTIONAL,
		satMask							BIT STRING (SIZE (1..32))	OPTIONAL,
		lsbTOW							BIT STRING (SIZE (8))		OPTIONAL,
	-- Extension mechanism for non- release99 information
		nonCriticalExtensions			SEQUENCE {}					OPTIONAL
} 

SysInfoType15-4 ::=					SEQUENCE {
	-- Measurement IEs
		ue-positioning-OTDOA-CipherParameters	UE-Positioning-CipherParameters			OPTIONAL,
		ue-positioning-OTDOA-AssistanceData		UE-Positioning-OTDOA-AssistanceData,
		v3a0NonCriticalExtensions			SEQUENCE {
			sysInfoType15-4-v3a0ext				SysInfoType15-4-v3a0ext,
		-- Extension mechanism for non- release99 information
			v4b0NonCriticalExtensions			SEQUENCE {
				sysInfoType15-4-v4b0ext				SysInfoType15-4-v4b0ext,
				nonCriticalExtensions				SEQUENCE {}		OPTIONAL
			}	OPTIONAL
		}	OPTIONAL
}

SysInfoType15-4-v3a0ext ::= SEQUENCE {
	sfn-Offset-Validity				SFN-Offset-Validity		OPTIONAL
}

SysInfoType15-4-v4b0ext ::= SEQUENCE {
	ue-Positioning-OTDOA-AssistanceData-r4ext	UE-Positioning-OTDOA-AssistanceData-r4ext	OPTIONAL
}

SysInfoType15-5 ::=					SEQUENCE {
	-- Measurement IEs
		ue-positioning-OTDOA-AssistanceData-UEB		UE-Positioning-OTDOA-AssistanceData-UEB,
		v3a0NonCriticalExtensions			SEQUENCE {
			sysInfoType15-5-v3a0ext				SysInfoType15-5-v3a0ext,
		-- Extension mechanism for non- release99 information
			nonCriticalExtensions				SEQUENCE {}		OPTIONAL
		}	OPTIONAL
}

SysInfoType15-5-v3a0ext ::= SEQUENCE {
	sfn-Offset-Validity			SFN-Offset-Validity		OPTIONAL
}

SysInfoType16 ::=					SEQUENCE {
	-- Radio bearer IEs
		preDefinedRadioConfiguration	PreDefRadioConfiguration,
	-- Extension mechanism for non- release99 information
		nonCriticalExtensions			SEQUENCE {}							OPTIONAL
}

SysInfoType17 ::=					SEQUENCE {
	-- Physical channel IEs
		-- If PDSCH/PUSCH is configured for 1.28Mcps TDD, pusch-SysInfoList and
		-- pdsch-SysInfoList should be absent and the info included in the
		-- tdd128SpecificInfo instead.
		-- If PDSCH/PUSCH is configured for 3.84Mcps TDD in R5, HCR-r5-SpecificInfo should also be 
		-- included.
		pusch-SysInfoList				PUSCH-SysInfoList				OPTIONAL,
		pdsch-SysInfoList				PDSCH-SysInfoList				OPTIONAL,
	-- Extension mechanism for non- release99 information
		v4b0NonCriticalExtensions		SEQUENCE {
			sysInfoType17-v4b0ext			SysInfoType17-v4b0ext-IEs,
			v590NonCriticalExtensions	SEQUENCE {
				sysInfoType17-v590ext			SysInfoType17-v590ext-IEs		OPTIONAL,
				nonCriticalExtensions			SEQUENCE {}						OPTIONAL
			}							OPTIONAL
		}							OPTIONAL
}

SysInfoType17-v4b0ext-IEs ::= SEQUENCE {
	tdd128SpecificInfo				SEQUENCE {
		pusch-SysInfoList				PUSCH-SysInfoList-LCR-r4		OPTIONAL,
		pdsch-SysInfoList				PDSCH-SysInfoList-LCR-r4		OPTIONAL
	}																	OPTIONAL
}

SysInfoType17-v590ext-IEs ::= SEQUENCE {
	hcr-r5-SpecificInfo				SEQUENCE {
		pusch-SysInfoList			PUSCH-SysInfoList-HCR-r5	OPTIONAL,
		pdsch-SysInfoList			PDSCH-SysInfoList-HCR-r5	OPTIONAL
	}															OPTIONAL
}

SysInfoType18 ::=						SEQUENCE {
		idleModePLMNIdentities			PLMNIdentitiesOfNeighbourCells		OPTIONAL,
		connectedModePLMNIdentities	PLMNIdentitiesOfNeighbourCells		OPTIONAL,
	-- Extension mechanism for non- release99 information
		nonCriticalExtensions			SEQUENCE {}		OPTIONAL
}

SysInfoTypeSB1 ::=					SEQUENCE {
	-- Other IEs
		sib-ReferenceList				SIB-ReferenceList,
	-- Extension mechanism for non- release99 information
		nonCriticalExtensions			SEQUENCE {}							OPTIONAL
}

SysInfoTypeSB2 ::=					SEQUENCE {
	-- Other IEs
		sib-ReferenceList				SIB-ReferenceList,
	-- Extension mechanism for non- release99 information
		nonCriticalExtensions			SEQUENCE {}							OPTIONAL
}

TDD-UMTS-Frequency-List ::= 			SEQUENCE (SIZE (1..maxNumTDDFreqs)) OF
											FrequencyInfoTDD

-- ***************************************************
--
--     ANSI-41 INFORMATION ELEMENTS (10.3.9)
--
-- ***************************************************

ANSI-41-GlobalServiceRedirectInfo ::= 	ANSI-41-NAS-Parameter
ANSI-41-PrivateNeighbourListInfo ::= 	ANSI-41-NAS-Parameter
ANSI-41-RAND-Information ::=			ANSI-41-NAS-Parameter
ANSI-41-UserZoneID-Information ::= 		ANSI-41-NAS-Parameter
ANSI-41-NAS-Parameter ::=				BIT STRING (SIZE (1..2048))

Min-P-REV ::=							BIT STRING (SIZE (8))

NAS-SystemInformationANSI-41 ::=		ANSI-41-NAS-Parameter
NID ::=									BIT STRING (SIZE (16))

P-REV ::=								BIT STRING (SIZE (8))

SID ::=									BIT STRING (SIZE (15))

-- ***************************************************
--
--     MBMS INFORMATION ELEMENTS (10.3.9a)
--
-- ***************************************************

MBMS-AccessProbabilityFactor ::=	ENUMERATED {
										apf0, apf32, apf64, apf96, apf128, apf160, apf192,
										apf224, apf256, apf288, apf320, apf352, apf384, apf416,
										apf448, apf480, apf512, apf544, apf576, apf608, apf640,
										apf672, apf704, apf736, apf768, apf800, apf832, apf864,
										apf896, apf928, apf960, apf1000 }

MBMS-CellGroupIdentity-r6 ::=		BIT STRING (SIZE (12))

MBMS-CommonCCTrChIdentity ::=		INTEGER (1..32)

MBMS-CommonPhyChIdentity ::=		INTEGER (1..32)

MBMS-CommonRBIdentity ::=			INTEGER (1..32)

MBMS-CommonRBInformation-r6 ::=		SEQUENCE {
	commonRBIdentity					MBMS-CommonRBIdentity,
	pdcp-Info							PDCP-Info-r4,
	rlc-Info							RLC-Info-MBMS-r6
}

MBMS-CommonRBInformationList-r6 ::= SEQUENCE (SIZE (1..maxMBMS-CommonRB)) OF
										MBMS-CommonRBInformation-r6

MBMS-CommonTrChIdentity ::=			INTEGER (1..32)

MBMS-ConnectedModeCountingScope ::= SEQUENCE {
	countingForUraPCH								BOOLEAN,
	countingForCellPCH								BOOLEAN,
	countingForCellFACH								BOOLEAN
}

MBMS-CurrentCell-SCCPCH-r6 ::=		SEQUENCE {
	sccpchIdentity						MBMS-SCCPCHIdentity					OPTIONAL,
	secondaryCCPCH-Info					MBMS-CommonPhyChIdentity,
	softComb-TimingOffset				MBMS-SoftComb-TimingOffset			OPTIONAL,
	-- If the IE transpCh-InfoCommonForAllTrCh is absent, the default TFCS as specified
	-- in 14.10.1 applies
	transpCh-InfoCommonForAllTrCh		MBMS-CommonCCTrChIdentity			OPTIONAL,
	transpCHInformation					MBMS-TrCHInformation-CurrList
}

MBMS-CurrentCell-SCCPCHList-r6 ::=	SEQUENCE (SIZE (1..maxSCCPCH)) OF
										MBMS-CurrentCell-SCCPCH-r6

MBMS-FACHCarryingMTCH-List ::=		SEQUENCE (SIZE (1..maxFACHPCH)) OF
											TransportFormatSet

MBMS-JoinedInformation-r6 ::=		SEQUENCE {
	p-TMSI								P-TMSI-GSM-MAP						OPTIONAL
}

MBMS-L1CombiningSchedule-32 ::=		SEQUENCE {
	-- Actual L1 combining schedule values (offset, start, duration) = IE value * 4
	cycleOffset							INTEGER (0..7)						OPTIONAL,
	mtch-L1CombiningPeriodList			SEQUENCE (SIZE (1..maxMBMS-L1CP)) OF SEQUENCE {
		periodStart							INTEGER (0..7),
		periodDuration						INTEGER (1..8)
	}
}

MBMS-L1CombiningSchedule-64 ::=		SEQUENCE {
	-- Actual L1 combining schedule values (offset, start, duration) = IE value * 4
	cycleOffset							INTEGER (0..15)						OPTIONAL,
	mtch-L1CombiningPeriodList			SEQUENCE (SIZE (1..maxMBMS-L1CP)) OF SEQUENCE {
		periodStart							INTEGER (0..15),
		periodDuration						INTEGER (1..16)
	}
}

MBMS-L1CombiningSchedule-128 ::=	SEQUENCE {
	-- Actual L1 combining schedule values (offset, start, duration) = IE value * 4
	cycleOffset							INTEGER (0..31)						OPTIONAL,
	mtch-L1CombiningPeriodList			SEQUENCE (SIZE (1..maxMBMS-L1CP)) OF SEQUENCE {
		periodStart							INTEGER (0..31),
		periodDuration						INTEGER (1..32)
	}
}

MBMS-L1CombiningSchedule-256 ::=	SEQUENCE {
	-- Actual L1 combining schedule values (offset, start, duration) = IE value * 4
	cycleOffset							INTEGER (0..63)						OPTIONAL,
	mtch-L1CombiningPeriodList			SEQUENCE (SIZE (1..maxMBMS-L1CP)) OF SEQUENCE {
		periodStart							INTEGER (0..63),
		periodDuration						INTEGER (1..64)
	}
}

MBMS-L1CombiningSchedule-512 ::=	SEQUENCE {
	-- Actual L1 combining schedule values (offset, start, duration) = IE value * 4
	cycleOffset							INTEGER (0..127)						OPTIONAL,
	mtch-L1CombiningPeriodList			SEQUENCE (SIZE (1..maxMBMS-L1CP)) OF SEQUENCE {
		periodStart							INTEGER (0..127),
		periodDuration						INTEGER (1..128)
	}
}

MBMS-L1CombiningSchedule-1024 ::=	SEQUENCE {
	-- Actual L1 combining schedule values (offset, start, duration) = IE value * 4
	cycleOffset							INTEGER (0..255)						OPTIONAL,
	mtch-L1CombiningPeriodList			SEQUENCE (SIZE (1..maxMBMS-L1CP)) OF SEQUENCE {
		periodStart							INTEGER (0..255),
		periodDuration						INTEGER (1..256)
	}
}

MBMS-L1CombiningSchedule ::=		CHOICE {
	cycleLength-32						MBMS-L1CombiningSchedule-32,
	cycleLength-64						MBMS-L1CombiningSchedule-64,
	cycleLength-128						MBMS-L1CombiningSchedule-128,
	cycleLength-256						MBMS-L1CombiningSchedule-256,
	cycleLength-512						MBMS-L1CombiningSchedule-512,
	cycleLength-1024					MBMS-L1CombiningSchedule-1024
}

MBMS-L1CombiningTransmTimeDiff ::=	INTEGER (0..3)

MBMS-L23Configuration ::=			CHOICE {
	sameAsCurrent						SEQUENCE {
		currentCell-SCCPCH					MBMS-SCCPCHIdentity,
		msch-ConfigurationInfo				MBMS-MSCH-ConfigurationInfo-r6		OPTIONAL
	},
	different							SEQUENCE {
		-- If the IE transpCh-InfoCommonForAllTrCh is absent, the default TFCS as specified
		-- in 14.10.1 applies
		transpCh-InfoCommonForAllTrCh		MBMS-CommonCCTrChIdentity			OPTIONAL,
		transpCHInformation					MBMS-TrCHInformation-NeighbList
	}
}

MBMS-LogicalChIdentity ::=			INTEGER (1..15)

MBMS-MCCH-ConfigurationInfo-r6 ::=	SEQUENCE {
	accessInfoPeriodCoefficient			INTEGER (0..3),
	repetitionPeriodCoefficient			INTEGER (0..3),
	modificationPeriodCoefficient		INTEGER (7..10),
	rlc-Info							RLC-Info-MBMS-r6,
	tctf-Presence						MBMS-TCTF-Presence					OPTIONAL
}

MBMS-MICHConfigurationInfo-r6 ::=	SEQUENCE {
	michPowerOffset						MBMS-MICHPowerOffset,
	mode								CHOICE {
		fdd									SEQUENCE {
			channelisationCode256				ChannelisationCode256,
			ni-CountPerFrame					MBMS-NI-CountPerFrame,
			sttd-Indicator						BOOLEAN
		},
		tdd384								SEQUENCE {
			timeslot							TimeslotNumber,
			midambleShiftAndBurstType			MidambleShiftAndBurstType,
			channelisationCode					DL-TS-ChannelisationCode,
			repetitionPeriodLengthOffset		RepPerLengthOffset-MICH		OPTIONAL,
			mbmsNotificationIndLength			MBMS-MICHNotificationIndLength	DEFAULT mn4
		},
		tdd128								SEQUENCE {
			timeslot							TimeslotNumber-LCR-r4,
			midambleShiftAndBurstType			MidambleShiftAndBurstType-LCR-r4,
			channelisationCodeList				SEQUENCE (SIZE (1..2)) OF
													DL-TS-ChannelisationCode,
			repetitionPeriodLengthOffset		RepPerLengthOffset-MICH		OPTIONAL,
			mbmsNotificationIndLength			MBMS-MICHNotificationIndLength	DEFAULT mn4
		}
	}
}

MBMS-MICHNotificationIndLength ::=	ENUMERATED { mn4, mn8, mn16 }

MBMS-MICHPowerOffset ::=			INTEGER (-10..5)

MBMS-ModifedService-r6 ::=			SEQUENCE {
	mbms-TransmissionIdentity			MBMS-TransmissionIdentity,
	mbms-RequiredUEAction				MBMS-RequiredUEAction-Mod,
	mbms-PreferredFrequency				CHOICE {
		mcch								MBMS-PFLIndex,
		dcch								MBMS-PFLInfo
	}		OPTIONAL,
	mbms-DispersionIndicator			ENUMERATED { true }					OPTIONAL,
	continueMCCHReading					BOOLEAN
}

MBMS-ModifedServiceList-r6 ::=		SEQUENCE (SIZE (1..maxMBMSservModif)) OF
										MBMS-ModifedService-r6

MBMS-MSCH-ConfigurationInfo-r6 ::=	SEQUENCE {
	mschShedulingInfo					MBMS-MSCHSchedulingInfo				OPTIONAL,
	rlc-Info							RLC-Info-MBMS-r6					OPTIONAL,
	tctf-Presence						MBMS-TCTF-Presence					OPTIONAL
}

MBMS-MSCHSchedulingInfo ::=			CHOICE {
	schedulingPeriod-32-Offset			INTEGER (0..31),
	schedulingPeriod-64-Offset			INTEGER (0..63),
	schedulingPeriod-128-Offset			INTEGER (0..127),
	schedulingPeriod-256-Offset			INTEGER (0..255),
	schedulingPeriod-512-Offset			INTEGER (0..511),
	schedulingPeriod-1024-Offset		INTEGER (0..1023)
}

MBMS-NeighbouringCellSCCPCH-r6 ::=	SEQUENCE {
	secondaryCCPCH-Info					MBMS-CommonPhyChIdentity,
	secondaryCCPCHPwrOffsetDiff			MBMS-SCCPCHPwrOffsetDiff			OPTIONAL,
	layer1Combining						CHOICE {
		fdd									SEQUENCE {
			softComb-TimingOffset				MBMS-SoftComb-TimingOffset,
			mbms-L1CombiningTransmTimeDiff		MBMS-L1CombiningTransmTimeDiff,
			mbms-L1CombiningSchedule			MBMS-L1CombiningSchedule	OPTIONAL
		},
		tdd									NULL
	}		OPTIONAL,
	mbms-L23Configuration				MBMS-L23Configuration
}

MBMS-NeighbouringCellSCCPCHList-r6 ::= SEQUENCE (SIZE (1..maxSCCPCH)) OF
										MBMS-NeighbouringCellSCCPCH-r6

MBMS-NI-CountPerFrame ::=			ENUMERATED { ni18, ni36, ni72, ni144 }

MBMS-NumberOfNeighbourCells-r6 ::=		INTEGER (0..32)

MBMS-PFLIndex ::=					INTEGER (1..maxMBMS-Freq)

MBMS-PFLInfo ::=					FrequencyInfo

MBMS-PhyChInformation-r6 ::=		SEQUENCE {
	mbms-CommonPhyChIdentity			MBMS-CommonPhyChIdentity,
	secondaryCCPCHInfo-MBMS				SecondaryCCPCHInfo-MBMS-r6
}

MBMS-PhyChInformationList-r6 ::=	SEQUENCE (SIZE (1..maxMBMS-CommonPhyCh)) OF
										MBMS-PhyChInformation-r6

MBMS-PL-ServiceRestrictInfo-r6 ::=	ENUMERATED { true }

MBMS-PreferredFreqRequest-r6 ::=	SEQUENCE {
	preferredFreqRequest				FrequencyInfo
}

MBMS-PreferredFrequencyInfo-r6 ::=	SEQUENCE {
	mbmsPreferredFrequency				INTEGER (1..maxMBMS-Freq)			OPTIONAL,
	layerConvergenceInformation			CHOICE {
		mbms-Qoffset						INTEGER (0..7),
		mbms-HCSoffset						INTEGER (0..7)
	},
	mbms-PL-ServiceRestrictInfo			MBMS-PL-ServiceRestrictInfo-r6		OPTIONAL
}

MBMS-PreferredFrequencyList-r6 ::=	SEQUENCE (SIZE (1..maxMBMS-Freq)) OF
										MBMS-PreferredFrequencyInfo-r6

MBMS-PTMActivationTime-r6 ::=		INTEGER (0..2047)

MBMS-PTM-RBInformation-C ::=		SEQUENCE {
	rbInformation						MBMS-CommonRBIdentity,
	shortTransmissionID					MBMS-ShortTransmissionID,
	logicalChIdentity					MBMS-LogicalChIdentity
}

MBMS-PTM-RBInformation-CList ::=	SEQUENCE (SIZE (1..maxRBperTrCh)) OF
										MBMS-PTM-RBInformation-C

MBMS-PTM-RBInformation-N ::=		SEQUENCE {
	shortTransmissionID					MBMS-ShortTransmissionID,
	logicalChIdentity					MBMS-LogicalChIdentity,
	layer1-CombiningStatus				BOOLEAN}

MBMS-PTM-RBInformation-NList ::=	SEQUENCE (SIZE (1..maxRBperTrCh)) OF
										MBMS-PTM-RBInformation-N

MBMS-RequiredUEAction-Mod ::=		ENUMERATED {
										none,
										acquireCountingInfo,
										acquireCountingInfoPTM-RBsUnmodified,
										acquirePTM-RBInfo,
										requestPTPRB,
										releasePTM-RB }

MBMS-RequiredUEAction-UMod ::=		ENUMERATED {
										none,
										acquirePTM-RBInfo,
										requestPTPRB }

MBMS-SCCPCHIdentity ::=				INTEGER (1..maxSCCPCH)

MBMS-SCCPCHPwrOffsetDiff ::=		ENUMERATED { mcpo-minus6, mcpo-minus3, mcpo-plus3, mcpo-plus6 }

MBMS-ServiceAccessInfo-r6 ::=		SEQUENCE {
	shortTransmissionID					MBMS-ShortTransmissionID,
	accessprobabilityFactor-Idle		MBMS-AccessProbabilityFactor,
	accessprobabilityFactor-UraPCH		MBMS-AccessProbabilityFactor		OPTIONAL,	mbms-ConnectedModeCountingScope		MBMS-ConnectedModeCountingScope
}

MBMS-ServiceAccessInfoList-r6 ::=	SEQUENCE (SIZE (1..maxMBMSservCount)) OF
										MBMS-ServiceAccessInfo-r6

MBMS-ServiceIdentity-r6 ::=			SEQUENCE {
	serviceIdentity						OCTET STRING (SIZE (3)),
	plmn-Identity						CHOICE {
		-- The 'sameAsMIB-PLMN-Id' choice refers to the 'PLMN Identity' (R99) in MIB.
		sameAsMIB-PLMN-Id					NULL,
		other								CHOICE {
			-- The 'sameAsMIB-MultiPLMN-Id' choice refers to one of the (1..5) PLMN Identities
			-- provided in the 'Multiple PLMN List' (REL-6) in MIB.
			sameAsMIB-MultiPLMN-Id				INTEGER (1..5),
			explicitPLMN-Id						PLMN-Identity
		}
	}
}

MBMS-ServiceSchedulingInfo-r6 ::=	SEQUENCE {
	mbms-TransmissionIdentity			MBMS-TransmissionIdentity,
	mbms-ServiceTransmInfoList			MBMS-ServiceTransmInfoList			OPTIONAL,
	nextSchedulingperiod				INTEGER (0..31)
}

MBMS-ServiceSchedulingInfoList-r6 ::= SEQUENCE (SIZE (1..maxMBMSservSched)) OF
										MBMS-ServiceSchedulingInfo-r6

MBMS-ServiceTransmInfo ::=			SEQUENCE {
	-- Actual values (start, duration) = IE values * 4
	start								INTEGER (0..255),
	duration							INTEGER (1..256)
}

MBMS-ServiceTransmInfoList ::=		SEQUENCE (SIZE (1..maxMBMSTransmis)) OF
										MBMS-ServiceTransmInfo

MBMS-SessionIdentity ::=			OCTET STRING (SIZE (1))

MBMS-ShortTransmissionID ::=		INTEGER (1..maxMBMSservUnmodif)

MBMS-SIBType5-SCCPCH-r6 ::=			SEQUENCE {
	sccpchIdentity						MBMS-SCCPCHIdentity,
	transpCHInformation					MBMS-TrCHInformation-SIB5List
}

MBMS-SIBType5-SCCPCHList-r6 ::=		SEQUENCE (SIZE (1..maxSCCPCH)) OF
										MBMS-SIBType5-SCCPCH-r6

MBMS-SoftComb-TimingOffset ::=		ENUMERATED { ms0, ms10, ms20, ms40 }

MBMS-TCTF-Presence ::=				ENUMERATED { false }

MBMS-TimersAndCounters-r6 ::=		SEQUENCE {
	t-318								T-318								DEFAULT ms1000
}

MBMS-TransmissionIdentity ::=		SEQUENCE {
	mbms-ServiceIdentity				MBMS-ServiceIdentity-r6,
	mbms-SessionIdentity				MBMS-SessionIdentity				OPTIONAL
}

MBMS-TranspChInfoForCCTrCh-r6 ::=	SEQUENCE {
	commonCCTrChIdentity				MBMS-CommonCCTrChIdentity,
	transportFormatCombinationSet		TFCS
}


MBMS-TranspChInfoForEachCCTrCh-r6 ::= SEQUENCE (SIZE (1..maxMBMS-CommonCCTrCh)) OF
										MBMS-TranspChInfoForCCTrCh-r6

MBMS-TranspChInfoForEachTrCh-r6 ::= SEQUENCE (SIZE (1..maxMBMS-CommonTrCh)) OF
										MBMS-TranspChInfoForTrCh-r6

MBMS-TranspChInfoForTrCh-r6 ::=		SEQUENCE {
	commonTrChIdentity					MBMS-CommonTrChIdentity,
	transportFormatSet					TransportFormatSet
}

MBMS-TrCHInformation-Curr ::=		SEQUENCE {
	transpCh-Info						MBMS-CommonTrChIdentity,
	rbInformation						MBMS-PTM-RBInformation-CList		OPTIONAL,
	msch-ConfigurationInfo				MBMS-MSCH-ConfigurationInfo-r6		OPTIONAL
}

MBMS-TrCHInformation-CurrList ::=	SEQUENCE (SIZE (1..maxFACHPCH)) OF
										MBMS-TrCHInformation-Curr

MBMS-TrCHInformation-Neighb ::=		SEQUENCE {
	transpCh-Info						MBMS-CommonTrChIdentity,
	transpCh-CombiningStatus			BOOLEAN,
	rbInformation						MBMS-PTM-RBInformation-NList		OPTIONAL,
	msch-ConfigurationInfo				MBMS-MSCH-ConfigurationInfo-r6		OPTIONAL
}

MBMS-TrCHInformation-NeighbList ::=	SEQUENCE (SIZE (1..maxFACHPCH)) OF
										MBMS-TrCHInformation-Neighb

MBMS-TrCHInformation-SIB5 ::=		SEQUENCE {
	transpCh-Identity					INTEGER (1..maxFACHPCH),
	rbInformation						MBMS-PTM-RBInformation-CList		OPTIONAL,
	msch-ConfigurationInfo				MBMS-MSCH-ConfigurationInfo-r6		OPTIONAL
}

MBMS-TrCHInformation-SIB5List ::=	SEQUENCE (SIZE (1..maxFACHPCH)) OF
										MBMS-TrCHInformation-SIB5

MBMS-UnmodifiedService-r6 ::=		SEQUENCE {
	mbms-TransmissionIdentity			MBMS-TransmissionIdentity,
	mbms-RequiredUEAction				MBMS-RequiredUEAction-UMod,
	mbms-PreferredFrequency				MBMS-PFLIndex						OPTIONAL
}

MBMS-UnmodifiedServiceList-r6 ::=	SEQUENCE (SIZE (1..maxMBMSservUnmodif)) OF
										MBMS-UnmodifiedService-r6

END


Constant-definitions DEFINITIONS AUTOMATIC TAGS ::=

BEGIN

hiPDSCHidentities			INTEGER ::= 64
hiPUSCHidentities			INTEGER ::= 64
hiRM						INTEGER ::= 256
maxAC						INTEGER ::= 16
maxAdditionalMeas 			INTEGER ::= 4
maxASC						INTEGER ::= 8
maxASCmap					INTEGER ::= 7
maxASCpersist				INTEGER ::= 6
maxCCTrCH					INTEGER ::= 8
maxCellMeas 				INTEGER ::= 32
maxCellMeas-1				INTEGER ::= 31
maxCNdomains				INTEGER ::= 4
maxCPCHsets					INTEGER ::= 16
maxDPCH-DLchan				INTEGER ::= 8
maxDPDCH-UL					INTEGER ::= 6
maxDRACclasses				INTEGER ::= 8
maxE-DCHMACdFlow			INTEGER ::= 8
maxE-DCHMACdFlow-1			INTEGER ::= 7
maxEDCHRL					INTEGER ::= 4
maxFACHPCH					INTEGER ::= 8
maxFreq						INTEGER ::= 8
maxFreqBandsFDD				INTEGER ::= 8
maxFreqBandsFDD-ext			INTEGER ::= 15	-- maxFreqBandsFDD-ext ::= 22  (maxFreqBandsFDD  1)
maxFreqBandsTDD				INTEGER ::= 4
maxFreqBandsGSM				INTEGER ::= 16
maxGERAN-SI					INTEGER ::= 8
maxGSMTargetCells			INTEGER ::= 32
maxHProcesses 				INTEGER ::= 8
maxHSDSCHTBIndex			INTEGER ::= 64
maxHSDSCHTBIndex-tdd384		INTEGER ::= 512
maxHSSCCHs					INTEGER ::= 4
maxInterSysMessages 		INTEGER ::= 4
maxLoCHperRLC				INTEGER ::= 2
maxMAC-d-PDUsizes			INTEGER ::= 8
maxMBMS-CommonCCTrCh		INTEGER ::= 32
maxMBMS-CommonPhyCh			INTEGER ::= 32
maxMBMS-CommonRB			INTEGER ::= 32
maxMBMS-CommonTrCh			INTEGER ::= 32
maxMBMS-Freq				INTEGER ::= 4
maxMBMS-L1CP				INTEGER ::= 4
maxMBMSservCount			INTEGER ::= 8
maxMBMSservModif			INTEGER ::= 32
maxMBMSservSched			INTEGER ::= 16
maxMBMSservUnmodif			INTEGER ::= 64
maxMBMSTransmis				INTEGER ::= 4
maxMeasEvent				INTEGER ::= 8
maxMeasIntervals			INTEGER ::= 3
maxMeasParEvent				INTEGER ::= 2
maxNumCDMA2000Freqs			INTEGER ::=  8
maxNumGSMFreqRanges			INTEGER ::= 32
maxNumFDDFreqs				INTEGER ::=  8
maxNumTDDFreqs				INTEGER ::=  8
maxNoOfMeas					INTEGER ::= 16
maxOtherRAT					INTEGER ::= 15
maxOtherRAT-16				INTEGER ::= 16
maxPage1					INTEGER ::= 8
maxPCPCH-APsig				INTEGER ::= 16
maxPCPCH-APsubCh			INTEGER ::= 12
maxPCPCH-CDsig				INTEGER ::= 16
maxPCPCH-CDsubCh			INTEGER ::= 12
maxPCPCH-SF					INTEGER ::= 7
maxPCPCHs					INTEGER ::= 64
maxPDCPAlgoType				INTEGER ::= 8
maxPDSCH					INTEGER ::= 8
maxPDSCH-TFCIgroups	 		INTEGER ::= 256
maxPRACH					INTEGER ::= 16
maxPRACH-FPACH				INTEGER ::= 8
maxPredefConfig				INTEGER ::= 16
maxPUSCH					INTEGER ::= 8
maxQueueIDs					INTEGER ::= 8
maxRABsetup					INTEGER ::= 16
maxRAT						INTEGER ::= 16
maxRB						INTEGER ::= 32
maxRBallRABs				INTEGER ::= 27
maxRBMuxOptions				INTEGER ::= 8
maxRBperRAB					INTEGER ::= 8
maxRBperTrCh				INTEGER ::= 16
maxReportedGSMCells			INTEGER ::= 8
maxRL						INTEGER ::= 8
maxRL-1						INTEGER ::= 7
maxRLCPDUsizePerLogChan		INTEGER ::= 32
maxRFC3095-CID				INTEGER ::= 16384
maxROHC-PacketSizes-r4		INTEGER ::= 16
maxROHC-Profile-r4			INTEGER ::= 8
maxSat						INTEGER ::= 16
maxSCCPCH					INTEGER ::= 16
maxSIB						INTEGER ::= 32
maxSIB-FACH					INTEGER ::= 8
maxSIBperMsg				INTEGER ::= 16
maxSRBsetup					INTEGER ::= 8
maxSystemCapability			INTEGER ::= 16
maxTF						INTEGER ::= 32
maxTF-CPCH					INTEGER ::= 16
maxTFC						INTEGER ::= 1024
maxTFCsub					INTEGER ::= 1024
maxTFCI-2-Combs	 			INTEGER ::= 512
maxTGPS						INTEGER ::= 6
maxTrCH						INTEGER ::= 32
-- maxTrCHpreconf should be 16 but has been set to 32 for compatibility
maxTrCHpreconf				INTEGER ::= 32
maxTS						INTEGER ::= 14
maxTS-1						INTEGER ::= 13 
maxTS-2						INTEGER ::= 12
maxTS-LCR					INTEGER ::= 6
maxTS-LCR-1					INTEGER ::= 5 
maxURA						INTEGER ::= 8
maxURNTI-Group				INTEGER ::= 8

END


Internode-definitions DEFINITIONS AUTOMATIC TAGS ::=

BEGIN

IMPORTS

	HandoverToUTRANCommand,
	MeasurementReport,
	PhysicalChannelReconfiguration,
	RadioBearerReconfiguration,
	RadioBearerRelease,
	RadioBearerSetup,
	RRC-FailureInfo,
	TransportChannelReconfiguration
FROM PDU-definitions

-- Core Network IEs :
	CN-DomainIdentity,
	CN-DomainInformationList,
	CN-DomainInformationListFull,
	CN-DRX-CycleLengthCoefficient,
	NAS-SystemInformationGSM-MAP,
-- UTRAN Mobility IEs :
	CellIdentity,
	URA-Identity,
-- User Equipment IEs :
	AccessStratumReleaseIndicator,
	C-RNTI,
	ChipRateCapability,
	DL-CapabilityWithSimultaneousHS-DSCHConfig,
	DL-PhysChCapabilityFDD-v380ext,
	DL-PhysChCapabilityTDD,
	DL-PhysChCapabilityTDD-LCR-r4,
	GSM-Measurements,
	GSMSecurityCapability-v6xyext,
	HSDSCH-physical-layer-category,
	FailureCauseWithProtErr,
	MaxHcContextSpace,
	MaximumAM-EntityNumberRLC-Cap,
	MaximumRLC-WindowSize,
	MaxNoPhysChBitsReceived,
	MaxNoDPDCH-BitsTransmitted,
	MaxPhysChPerFrame,
	MaxPhysChPerSubFrame-r4,
	MaxPhysChPerTS,
	MaxROHC-ContextSessions-r4,
	MaxTS-PerFrame,
	MaxTS-PerSubFrame-r4,
	MinimumSF-DL,
	MultiModeCapability,
	MultiRAT-Capability,
	NetworkAssistedGPS-Supported,
	PhysicalChannelCapability-edch-r6,
	RadioFrequencyBandTDDList,
	RLC-Capability,
	RRC-MessageSequenceNumber,
	SecurityCapability,
	SimultaneousSCCPCH-DPCH-Reception,
	STARTList,
	STARTSingle,
	START-Value,
	SupportOfDedicatedPilotsForChEstimation,
	TransportChannelCapability,
	TxRxFrequencySeparation,
	U-RNTI,
	UE-CapabilityContainer-IEs,
	UE-MultiModeRAT-Capability,
	UE-PowerClassExt,
	UE-RadioAccessCapabBandFDDList,
	UE-RadioAccessCapabBandFDDList2,
	UE-RadioAccessCapabBandFDDList-ext,
	UE-RadioAccessCapability,
	UE-RadioAccessCapability-v370ext,
	UE-RadioAccessCapability-v380ext,
	UE-RadioAccessCapability-v3a0ext,
	UE-RadioAccessCapability-v3g0ext,
	UE-RadioAccessCapability-v4b0ext,
	UE-RadioAccessCapability-v590ext,
	UE-RadioAccessCapability-v5c0ext,
	UE-RadioAccessCapability-v650ext,
	UE-RadioAccessCapability-v680ext,
	UL-PhysChCapabilityFDD,
	UL-PhysChCapabilityFDD-r6,
	UL-PhysChCapabilityTDD,
	UL-PhysChCapabilityTDD-LCR-r4,
-- Radio Bearer IEs :
	PredefinedConfigStatusList,
	PredefinedConfigValueTag,
	RAB-InformationSetupList,
	RAB-InformationSetupList-r4,
	RAB-InformationSetupList-r5,
	RAB-InformationSetupList-r6-ext,
	RAB-InformationSetupList-r6,
	RB-Identity,
	SRB-InformationSetupList,
	SRB-InformationSetupList-r5,
	SRB-InformationSetupList-r6,
-- Transport Channel IEs :
	CPCH-SetID,
	DL-CommonTransChInfo,
	DL-CommonTransChInfo-r4,
	DL-AddReconfTransChInfoList,
	DL-AddReconfTransChInfoList-r4,
	DL-AddReconfTransChInfoList-r5,
	DRAC-StaticInformationList,
	UL-CommonTransChInfo,
	UL-CommonTransChInfo-r4,
	UL-AddReconfTransChInfoList,
	UL-AddReconfTransChInfoList-r6,
-- Physical Channel IEs :
	PrimaryCPICH-Info,
	TPC-CombinationIndex,
	ScramblingCodeChange,
	TGCFN,
	TGPSI,
	TGPS-ConfigurationParams,
-- Measurement IEs :
	Inter-FreqEventCriteriaList-v590ext,
	Intra-FreqEventCriteriaList-v590ext,
	IntraFreqEvent-1d-r5,
	IntraFreqReportingCriteria-1b-r5,
	InterRATCellInfoIndication,
	MeasuredResultsOnRACHinterFreq,
	MeasurementIdentity,
	MeasurementReportingMode,
	MeasurementType,
	MeasurementType-r4,
	AdditionalMeasurementID-List,
	PositionEstimate,
-- MBMS IEs :
	MBMS-JoinedInformation-r6,
-- Other IEs :
	GERANIu-RadioAccessCapability,
	GSM-MS-RadioAccessCapability,
	InterRAT-UE-RadioAccessCapabilityList,
	InterRAT-UE-RadioAccessCapability-v590ext,
	InterRAT-UE-RadioAccessCapability-v6xyext,
	UESpecificBehaviourInformation1idle,
	UESpecificBehaviourInformation1interRAT

FROM InformationElements

	maxCNdomains,
	maxNoOfMeas,

	maxRB,
	maxRBallRABs,
	maxRFC3095-CID,
	maxSRBsetup,
	maxRL,
	maxTGPS
FROM Constant-definitions
;

-- Part 1: Class definitions similar to what has been defined in 11.1 for RRC messages
-- Information that is tranferred in the same direction and across the same path is grouped

-- ***************************************************
--
-- RRC information, to target RNC
--
-- ***************************************************
-- RRC Information to target RNC sent either from source RNC or from another RAT

ToTargetRNC-Container ::= CHOICE {
	interRATHandoverInfo				InterRATHandoverInfoWithInterRATCapabilities-r3,
	srncRelocation						SRNC-RelocationInfo-r3,
	rfc3095-ContextInfo					RFC3095-ContextInfo-r5,
	extension							NULL
}

-- ***************************************************
--
-- RRC information, target RNC to source RNC
--
-- ***************************************************


TargetRNC-ToSourceRNC-Container ::= CHOICE {
	radioBearerSetup					RadioBearerSetup,
	radioBearerReconfiguration			RadioBearerReconfiguration,
	radioBearerRelease					RadioBearerRelease,
	transportChannelReconfiguration		TransportChannelReconfiguration,
	physicalChannelReconfiguration		PhysicalChannelReconfiguration,
	rrc-FailureInfo						RRC-FailureInfo,
	-- IE dl-DCCHmessage consists of an octet string that includes the IE DL-DCCH-Message
	dL-DCCHmessage						OCTET STRING,
	extension							NULL
}

-- Part 2: Container definitions, similar to the PDU definitions in 11.2 for RRC messages
-- In alphabetical order


-- ***************************************************
--
-- Handover to UTRAN information
--
-- ***************************************************

InterRATHandoverInfoWithInterRATCapabilities-r3 ::= CHOICE {
	r3								SEQUENCE {
		-- IE InterRATHandoverInfoWithInterRATCapabilities-r3-IEs also 
		-- includes non critical extensions
		interRATHandoverInfo-r3			InterRATHandoverInfoWithInterRATCapabilities-r3-IEs,
		v390NonCriticalExtensions		SEQUENCE {
			interRATHandoverInfoWithInterRATCapabilities-v390ext
										InterRATHandoverInfoWithInterRATCapabilities-v390ext-IEs,
			-- Reserved for future non critical extension
			v6xyNonCriticalExtensions		SEQUENCE {
				interRATHandoverInfoWithInterRATCapabilities-v6xyext
										InterRATHandoverInfoWithInterRATCapabilities-v6xyext-IEs,
				nonCriticalExtensions			SEQUENCE {}	OPTIONAL
			}		OPTIONAL
		}		OPTIONAL
	},
	criticalExtensions				SEQUENCE {}
}

InterRATHandoverInfoWithInterRATCapabilities-r3-IEs ::=		SEQUENCE {
		-- The order of the IEs may not reflect the tabular format
		--  but has been chosen to simplify the handling of the information in the BSC
	--	Other IEs
		ue-RATSpecificCapability		InterRAT-UE-RadioAccessCapabilityList	OPTIONAL,
		-- interRATHandoverInfo, Octet string is used to obtain 8 bit length field prior to 
		-- actual information.  This makes it possible for BSS to transparently handle information
		-- received via GSM air interface even when it includes non critical extensions.
		-- The octet string shall include the InterRATHandoverInfo information
		-- The BSS can re-use the 04.18 length field received from the MS
		interRATHandoverInfo			OCTET STRING (SIZE (0..255))
}

InterRATHandoverInfoWithInterRATCapabilities-v390ext-IEs ::= SEQUENCE {
	-- User equipment IEs
		failureCauseWithProtErr				FailureCauseWithProtErr					OPTIONAL
}

InterRATHandoverInfoWithInterRATCapabilities-v6xyext-IEs ::= SEQUENCE {
	-- User equipment IEs
		gsmSecurityCapability-v6xyext		GSMSecurityCapability-v6xyext				OPTIONAL,
	-- Other IEs
		ue-RATSpecificCapability-v6xyext	InterRAT-UE-RadioAccessCapability-v6xyext	OPTIONAL
}

-- ***************************************************
--
-- RFC3095 context, source RNC to target RNC
--
-- ***************************************************

RFC3095-ContextInfo-r5 ::= CHOICE {
	r5								SEQUENCE {
		rFC3095-ContextInfoList-r5		RFC3095-ContextInfoList-r5,
		-- Reserved for future non critical extension
		nonCriticalExtensions			SEQUENCE {}	OPTIONAL
	},
	criticalExtensions				SEQUENCE {}
}

RFC3095-ContextInfoList-r5 ::=		SEQUENCE (SIZE (1..maxRBallRABs)) OF
										RFC3095-ContextInfo


-- ***************************************************
--
-- SRNC Relocation information
--
-- ***************************************************

SRNC-RelocationInfo-r3 ::= CHOICE {
	r3								SEQUENCE {
		sRNC-RelocationInfo-r3			SRNC-RelocationInfo-r3-IEs,
		v380NonCriticalExtensions			SEQUENCE {
			sRNC-RelocationInfo-v380ext	SRNC-RelocationInfo-v380ext-IEs,
			-- Reserved for future non critical extension
			v390NonCriticalExtensions			SEQUENCE {
				sRNC-RelocationInfo-v390ext			SRNC-RelocationInfo-v390ext-IEs,
				v3a0NonCriticalExtensions			SEQUENCE {
					sRNC-RelocationInfo-v3a0ext			SRNC-RelocationInfo-v3a0ext-IEs,
					v3b0NonCriticalExtensions			SEQUENCE {
						sRNC-RelocationInfo-v3b0ext			SRNC-RelocationInfo-v3b0ext-IEs,
						v3c0NonCriticalExtensions			SEQUENCE {
							sRNC-RelocationInfo-v3c0ext			SRNC-RelocationInfo-v3c0ext-IEs,
							laterNonCriticalExtensions			SEQUENCE {
								sRNC-RelocationInfo-v3d0ext			SRNC-RelocationInfo-v3d0ext-IEs,
								-- Container for additional R99 extensions
								sRNC-RelocationInfo-r3-add-ext		BIT STRING
												(CONTAINING	SRNC-RelocationInfo-v3h0ext-IEs)		OPTIONAL,
								v3g0NonCriticalExtensions			SEQUENCE {
									sRNC-RelocationInfo-v3g0ext			SRNC-RelocationInfo-v3g0ext-IEs,
									v4b0NonCriticalExtensions			SEQUENCE {
										sRNC-RelocationInfo-v4b0ext			SRNC-RelocationInfo-v4b0ext-IEs,
										v590NonCriticalExtensions			SEQUENCE {
											sRNC-RelocationInfo-v590ext
																			SRNC-RelocationInfo-v590ext-IEs,
											v5a0NonCriticalExtensions			SEQUENCE {
												sRNC-RelocationInfo-v5a0ext
																			SRNC-RelocationInfo-v5a0ext-IEs,
												v5b0NonCriticalExtensions			SEQUENCE {
													sRNC-RelocationInfo-v5b0ext
																			SRNC-RelocationInfo-v5b0ext-IEs,
														v5c0NonCriticalExtensions			SEQUENCE {
															sRNC-RelocationInfo-v5c0ext
																				SRNC-RelocationInfo-v5c0ext-IEs,
															v6xyNonCriticalExtensions		SEQUENCE {
																sRNC-RelocationInfo-v6xyext
																			SRNC-RelocationInfo-v6xyext-IEs,
																-- Reserved for future non critical extension
																nonCriticalExtensions	SEQUENCE {}	OPTIONAL
															}		OPTIONAL
														}		OPTIONAL
												}		OPTIONAL
											}		OPTIONAL
										}		OPTIONAL
									}		OPTIONAL
								}		OPTIONAL
							}		OPTIONAL
						}		OPTIONAL
					}		OPTIONAL
				}		OPTIONAL
			}		OPTIONAL
		}		OPTIONAL
	},
	later-than-r3					CHOICE {
		r4								SEQUENCE {
			sRNC-RelocationInfo-r4			SRNC-RelocationInfo-r4-IEs,
			v4d0NonCriticalExtensions		SEQUENCE {
				sRNC-RelocationInfo-v4d0ext		SRNC-RelocationInfo-v4d0ext-IEs,
				-- Container for adding non critical extensions after freezing REL-5
				sRNC-RelocationInfo-r4-add-ext		BIT STRING
								(CONTAINING SRNC-RelocationInfo-v650ext1-IEs)		OPTIONAL,
				v590NonCriticalExtensions			SEQUENCE {
					sRNC-RelocationInfo-v590ext			SRNC-RelocationInfo-v590ext-IEs,
					v5a0NonCriticalExtensions			SEQUENCE {
						sRNC-RelocationInfo-v5a0ext			SRNC-RelocationInfo-v5a0ext-IEs,
						v5b0NonCriticalExtensions			SEQUENCE {
							sRNC-RelocationInfo-v5b0ext			SRNC-RelocationInfo-v5b0ext-IEs,
							v5c0NonCriticalExtensions			SEQUENCE {
								sRNC-RelocationInfo-v5c0ext			SRNC-RelocationInfo-v5c0ext-IEs,
								v6xyNonCriticalExtensions			SEQUENCE {
									sRNC-RelocationInfo-v6xyext			
												SRNC-RelocationInfo-v6xyext-IEs,
									nonCriticalExtensions				SEQUENCE {}	OPTIONAL
								}	OPTIONAL
							}	OPTIONAL
						}	OPTIONAL
					}	OPTIONAL
				}	OPTIONAL
			}	OPTIONAL
		},
		criticalExtensions				CHOICE {
			r5								SEQUENCE {
				sRNC-RelocationInfo-r5			SRNC-RelocationInfo-r5-IEs,
				sRNC-RelocationInfo-r5-add-ext	BIT STRING		OPTIONAL,
				v5a0NonCriticalExtensions		SEQUENCE {
					sRNC-RelocationInfo-v5a0ext		SRNC-RelocationInfo-v5a0ext-IEs,
					v5b0NonCriticalExtensions		SEQUENCE {
						sRNC-RelocationInfo-v5b0ext		SRNC-RelocationInfo-v5b0ext-IEs,
						v5c0NonCriticalExtensions			SEQUENCE {
							sRNC-RelocationInfo-v5c0ext			SRNC-RelocationInfo-v5c0ext-IEs,
							v650NonCriticalExtensions		SEQUENCE {
								sRNC-RelocationInfo-v650ext2	SRNC-RelocationInfo-v650ext2-IEs,
								v680NonCriticalExtensions		SEQUENCE {
									sRNC-RelocationInfo-v680ext		SRNC-RelocationInfo-v680ext-IEs,
									v6xyNonCriticalExtensions		SEQUENCE {
										sRNC-RelocationInfo-v6xyext		SRNC-RelocationInfo-v6xyext-IEs,
										nonCriticalExtensions			SEQUENCE {}		OPTIONAL
									}	OPTIONAL
								}	OPTIONAL
							}	OPTIONAL
						}	OPTIONAL
					}	OPTIONAL
				}	OPTIONAL
			},
			criticalExtensions				CHOICE {
				r6								SEQUENCE {
					sRNC-RelocationInfo-r6			SRNC-RelocationInfo-r6-IEs,
					sRNC-RelocationInfo-r6-add-ext	BIT STRING		OPTIONAL,
					nonCriticalExtensions			SEQUENCE {}		OPTIONAL
				},
				criticalExtensions					SEQUENCE {}
			}
		}
	}
}

SRNC-RelocationInfo-r3-IEs ::=		SEQUENCE {
	-- Non-RRC IEs
		stateOfRRC						StateOfRRC,
		stateOfRRC-Procedure			StateOfRRC-Procedure,
	-- Ciphering related information IEs
	-- If the extension v380 is included use the extension for the ciphering status per CN domain
		cipheringStatus					CipheringStatus,
		-- If ciphering status is started and the IE latestConfiguredCN-Domain should be included,
		-- SRNC-RelocationInfo-r3-IEs can not be used. Since IE latestConfiguredCN-Domain is present 
		-- in later-than-r3 branch, that should be used instead.
		calculationTimeForCiphering		CalculationTimeForCiphering			OPTIONAL,
		-- The order of occurrence in the IE cipheringInfoPerRB-List is the
		-- same as the RBs in SRB-InformationSetupList in RAB-InformationSetupList.
		-- The signalling RBs are supposed to be listed
		-- first. Only UM and AM RBs that are ciphered are listed here
		cipheringInfoPerRB-List			CipheringInfoPerRB-List				OPTIONAL,
		count-C-List					COUNT-C-List						OPTIONAL,
		integrityProtectionStatus		IntegrityProtectionStatus,
		-- In the IE srb-SpecificIntegrityProtInfo, the first information listed corresponds to
      -- signalling radio bearer RB0 and after the order of occurrence is the same as the SRBs in
	 -- SRB-InformationSetupList
		-- The target RNC may ignore the IE srb-SpecificIntegrityProtInfo if the
		-- IE integrityProtectionStatus has the value "not started".
		srb-SpecificIntegrityProtInfo	SRB-SpecificIntegrityProtInfoList,
		implementationSpecificParams	ImplementationSpecificParams		OPTIONAL,
	-- User equipment IEs
		u-RNTI							U-RNTI,
		c-RNTI							C-RNTI								OPTIONAL,
		ue-RadioAccessCapability		UE-RadioAccessCapability,
		ue-Positioning-LastKnownPos		UE-Positioning-LastKnownPos			OPTIONAL,
	-- Other IEs
		ue-RATSpecificCapability		InterRAT-UE-RadioAccessCapabilityList	OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Core network IEs
		cn-CommonGSM-MAP-NAS-SysInfo	NAS-SystemInformationGSM-MAP,
		cn-DomainInformationList		CN-DomainInformationList			OPTIONAL,
	-- Measurement IEs
		ongoingMeasRepList				OngoingMeasRepList					OPTIONAL,
	-- Radio bearer IEs
		predefinedConfigStatusList		PredefinedConfigStatusList,
		srb-InformationList				SRB-InformationSetupList,
		rab-InformationList				RAB-InformationSetupList			OPTIONAL,
	-- Transport channel IEs
		ul-CommonTransChInfo			UL-CommonTransChInfo				OPTIONAL,
		ul-TransChInfoList				UL-AddReconfTransChInfoList			OPTIONAL,
		modeSpecificInfo				CHOICE {
			fdd								SEQUENCE {
				-- dummy and dummy2 are not used in this version of the specification, they should
				-- not be sent and if received they should be ignored.
				dummy							CPCH-SetID					OPTIONAL,
				dummy2							DRAC-StaticInformationList	OPTIONAL
			},
			tdd								NULL
		},
		dl-CommonTransChInfo			DL-CommonTransChInfo				OPTIONAL,
		dl-TransChInfoList				DL-AddReconfTransChInfoList			OPTIONAL,
	-- Measurement report
		measurementReport				MeasurementReport					OPTIONAL
}

SRNC-RelocationInfo-v380ext-IEs ::= SEQUENCE {
	-- Ciphering related information IEs
		cn-DomainIdentity					CN-DomainIdentity,
		cipheringStatusList					CipheringStatusList
}

SRNC-RelocationInfo-v390ext-IEs ::= SEQUENCE {
		cn-DomainInformationList-v390ext	CN-DomainInformationList-v390ext		OPTIONAL,
		ue-RadioAccessCapability-v370ext	UE-RadioAccessCapability-v370ext		OPTIONAL,
		ue-RadioAccessCapability-v380ext	UE-RadioAccessCapability-v380ext		OPTIONAL,
		dl-PhysChCapabilityFDD-v380ext		DL-PhysChCapabilityFDD-v380ext,
		failureCauseWithProtErr				FailureCauseWithProtErr					OPTIONAL
}

SRNC-RelocationInfo-v3a0ext-IEs ::= SEQUENCE {
		cipheringInfoForSRB1-v3a0ext		CipheringInfoPerRB-List-v3a0ext,
		ue-RadioAccessCapability-v3a0ext	UE-RadioAccessCapability-v3a0ext		OPTIONAL,
		-- cn-domain identity for IE startValueForCiphering-v3a0ext is specified
		-- in subsequent extension (SRNC-RelocationInfo-v3b0ext-IEs)
		startValueForCiphering-v3a0ext		START-Value
}

SRNC-RelocationInfo-v3b0ext-IEs ::= SEQUENCE {
		-- cn-domain identity for IE startValueForCiphering-v3a0ext included in previous extension
		cn-DomainIdentity				CN-DomainIdentity,
		-- the IE startValueForCiphering-v3b0ext contains the start values for each CN Domain. The 
		-- value of start indicated by the IE startValueForCiphering-v3a0ext should be set to the
		-- same value as the start-Value for the corresponding cn-DomainIdentity in the IE 
		-- startValueForCiphering-v3b0ext
		startValueForCiphering-v3b0ext		STARTList2								OPTIONAL
}

SRNC-RelocationInfo-v3c0ext-IEs ::= SEQUENCE {
		-- IE rb-IdentityForHOMessage includes the identity of the RB used by the source SRNC
		-- to send the message contained in the IE TargetRNC-ToSourceRNC-Container.
		-- Only included if type is UE involved
		rb-IdentityForHOMessage				RB-Identity  		OPTIONAL
}

SRNC-RelocationInfo-v3d0ext-IEs ::= SEQUENCE {
	-- User equipment IEs
		uESpecificBehaviourInformation1idle		UESpecificBehaviourInformation1idle		OPTIONAL,
		uESpecificBehaviourInformation1interRAT		UESpecificBehaviourInformation1interRAT		OPTIONAL
}

SRNC-RelocationInfo-v3g0ext-IEs ::= SEQUENCE {
		ue-RadioAccessCapability-v3g0ext	UE-RadioAccessCapability-v3g0ext		OPTIONAL
}

SRNC-RelocationInfo-v3h0ext-IEs ::= SEQUENCE {
		tpc-CombinationInfoList			TPC-CombinationInfoList		OPTIONAL,
		v650NonCriticalExtensions		SEQUENCE {
			ue-RadioAccessCapability-v650ext	UE-RadioAccessCapability-v650ext	OPTIONAL,
			v680NonCriticalExtensions		SEQUENCE {
				ue-RadioAccessCapability-v680ext	UE-RadioAccessCapability-v680ext,
				nonCriticalExtension				SEQUENCE {}							OPTIONAL
		}	OPTIONAL
	}	OPTIONAL
}

SRNC-RelocationInfo-v4d0ext-IEs ::= SEQUENCE {
		tpc-CombinationInfoList		TPC-CombinationInfoList		OPTIONAL
}

TPC-CombinationInfoList ::= SEQUENCE (SIZE (1..maxRL)) OF
		TPC-Combination-Info

STARTList2 ::=						SEQUENCE (SIZE (2..maxCNdomains)) OF
										STARTSingle

SRNC-RelocationInfo-v4b0ext-IEs ::= SEQUENCE {
		ue-RadioAccessCapability-v4b0ext	UE-RadioAccessCapability-v4b0ext		OPTIONAL
}

SRNC-RelocationInfo-v590ext-IEs ::= SEQUENCE {
		ue-RadioAccessCapability-v590ext	UE-RadioAccessCapability-v590ext		OPTIONAL,
		ue-RATSpecificCapability-v590ext	InterRAT-UE-RadioAccessCapability-v590ext	OPTIONAL
}

SRNC-RelocationInfo-v5a0ext-IEs ::= SEQUENCE {
		storedCompressedModeInfo		StoredCompressedModeInfo	OPTIONAL
}

SRNC-RelocationInfo-v5b0ext-IEs ::= SEQUENCE {
	interRATCellInfoIndication			InterRATCellInfoIndication			OPTIONAL
}

SRNC-RelocationInfo-v5c0ext-IEs ::= SEQUENCE {
		ue-RadioAccessCapability-v5c0ext	UE-RadioAccessCapability-v5c0ext		OPTIONAL
}

SRNC-RelocationInfo-v650ext1-IEs ::= SEQUENCE {
	ue-RadioAccessCapability-v650ext	UE-RadioAccessCapability-v650ext	OPTIONAL,
	v680NonCriticalExtensions			SEQUENCE {
		ue-RadioAccessCapability-v680ext	UE-RadioAccessCapability-v680ext,
		nonCriticalExtension				SEQUENCE {}		OPTIONAL
	}	OPTIONAL
}

SRNC-RelocationInfo-v650ext2-IEs ::= SEQUENCE {
		ue-RadioAccessCapability-v650ext		UE-RadioAccessCapability-v650ext
}

CipheringInfoPerRB-List-v3a0ext ::= SEQUENCE {
		dl-UM-SN						BIT STRING (SIZE (7))
}

CipheringStatusList ::=			SEQUENCE (SIZE (1..maxCNdomains)) OF
										CipheringStatusCNdomain

CipheringStatusCNdomain ::=				SEQUENCE {
		cn-DomainIdentity				CN-DomainIdentity,
		cipheringStatus					CipheringStatus
}

CodeChangeStatusList ::= SEQUENCE (SIZE (1..maxRL)) OF
		CodeChangeStatus

CodeChangeStatus ::= SEQUENCE {
		primaryCPICH-Info					PrimaryCPICH-Info,
		scramblingCodeChange				ScramblingCodeChange
}

StoredCompressedModeInfo ::= SEQUENCE {
		storedTGP-SequenceList		StoredTGP-SequenceList,
		codeChangeStatusList		CodeChangeStatusList	OPTIONAL
}

StoredTGP-SequenceList ::=			SEQUENCE (SIZE (1..maxTGPS)) OF
										StoredTGP-Sequence

StoredTGP-Sequence ::=				SEQUENCE {
	tgpsi								TGPSI,
	current-tgps-Status					CHOICE {
		active								SEQUENCE {
			tgcfn								TGCFN
		},
		inactive							NULL
	},
	tgps-ConfigurationParams			TGPS-ConfigurationParams			OPTIONAL
}

SRNC-RelocationInfo-r4-IEs ::=			SEQUENCE {
	-- Non-RRC IEs
		-- IE rb-IdentityForHOMessage includes the identity of the RB used by the source SRNC
		-- to send the message contained in the IE TargetRNC-ToSourceRNC-Container.
		-- Only included if type is UE involved
		rb-IdentityForHOMessage			RB-Identity							OPTIONAL,
		stateOfRRC						StateOfRRC,
		stateOfRRC-Procedure			StateOfRRC-Procedure,
	-- Ciphering related information IEs
		cipheringStatusList				CipheringStatusList-r4,
		latestConfiguredCN-Domain		CN-DomainIdentity,
		calculationTimeForCiphering		CalculationTimeForCiphering			OPTIONAL,
		count-C-List					COUNT-C-List						OPTIONAL,
		cipheringInfoPerRB-List			CipheringInfoPerRB-List-r4			OPTIONAL,
	-- Integrity protection related information IEs
		integrityProtectionStatus		IntegrityProtectionStatus,
		-- The target RNC may ignore the IE srb-SpecificIntegrityProtInfo if the
		-- IE integrityProtectionStatus has the value "not started".
		srb-SpecificIntegrityProtInfo	SRB-SpecificIntegrityProtInfoList,
		implementationSpecificParams	ImplementationSpecificParams		OPTIONAL,
	-- User equipment IEs
		u-RNTI							U-RNTI,
		c-RNTI							C-RNTI								OPTIONAL,
		ue-RadioAccessCapability		UE-RadioAccessCapability-r4,
		ue-RadioAccessCapability-ext	UE-RadioAccessCapabBandFDDList		OPTIONAL,
		ue-Positioning-LastKnownPos		UE-Positioning-LastKnownPos			OPTIONAL,
		uESpecificBehaviourInformation1idle		UESpecificBehaviourInformation1idle		OPTIONAL,
		uESpecificBehaviourInformation1interRAT		UESpecificBehaviourInformation1interRAT		OPTIONAL,
	-- Other IEs
		ue-RATSpecificCapability		InterRAT-UE-RadioAccessCapabilityList	OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Core network IEs
		cn-CommonGSM-MAP-NAS-SysInfo	NAS-SystemInformationGSM-MAP,
		cn-DomainInformationList		CN-DomainInformationListFull		OPTIONAL,
	-- Measurement IEs
		ongoingMeasRepList				OngoingMeasRepList-r4				OPTIONAL,
	-- Radio bearer IEs
		predefinedConfigStatusList		PredefinedConfigStatusList,
		srb-InformationList				SRB-InformationSetupList,
		rab-InformationList				RAB-InformationSetupList-r4			OPTIONAL,
	-- Transport channel IEs
		ul-CommonTransChInfo			UL-CommonTransChInfo-r4				OPTIONAL,
		ul-TransChInfoList				UL-AddReconfTransChInfoList			OPTIONAL,
		-- 'dummy', 'dummy1' and 'dummy2' are not used in this version of the specification,
		-- they should not be sent and if received they should be ignored.
		dummy							CHOICE {
			fdd								SEQUENCE {
				dummy1							CPCH-SetID					OPTIONAL,
				dummy2							DRAC-StaticInformationList	OPTIONAL
			},
			tdd								NULL
		}																	OPTIONAL,
		dl-CommonTransChInfo			DL-CommonTransChInfo-r4				OPTIONAL,
		dl-TransChInfoList				DL-AddReconfTransChInfoList-r4		OPTIONAL,
	-- Measurement report
		measurementReport				MeasurementReport					OPTIONAL,
		failureCause					FailureCauseWithProtErr				OPTIONAL
}

SRNC-RelocationInfo-r5-IEs ::=			SEQUENCE {
	-- Non-RRC IEs
		-- IE rb-IdentityForHOMessage includes the identity of the RB used by the source SRNC
		-- to send the message contained in the IE TargetRNC-ToSourceRNC-Container.
		-- Only included if type is "UE involved"
		rb-IdentityForHOMessage			RB-Identity							OPTIONAL,
		stateOfRRC						StateOfRRC,
		stateOfRRC-Procedure			StateOfRRC-Procedure,
	-- Ciphering related information IEs
		cipheringStatusList				CipheringStatusList-r4,
		latestConfiguredCN-Domain		CN-DomainIdentity,
		calculationTimeForCiphering		CalculationTimeForCiphering			OPTIONAL,
		count-C-List					COUNT-C-List						OPTIONAL,
		cipheringInfoPerRB-List			CipheringInfoPerRB-List-r4			OPTIONAL,
	-- Integrity protection related information IEs
		integrityProtectionStatus		IntegrityProtectionStatus,
		srb-SpecificIntegrityProtInfo	SRB-SpecificIntegrityProtInfoList	OPTIONAL,
		implementationSpecificParams	ImplementationSpecificParams		OPTIONAL,
	-- User equipment IEs
		u-RNTI							U-RNTI,
		c-RNTI							C-RNTI								OPTIONAL,
		ue-RadioAccessCapability		UE-RadioAccessCapability-r5,
		ue-RadioAccessCapability-ext	UE-RadioAccessCapabBandFDDList		OPTIONAL,
		ue-Positioning-LastKnownPos		UE-Positioning-LastKnownPos			OPTIONAL,
		uESpecificBehaviourInformation1idle
										UESpecificBehaviourInformation1idle		OPTIONAL,
		uESpecificBehaviourInformation1interRAT
										UESpecificBehaviourInformation1interRAT		OPTIONAL,
	-- Other IEs
		ue-RATSpecificCapability		InterRAT-UE-RadioAccessCapabilityList-r5	OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Core network IEs
		cn-CommonGSM-MAP-NAS-SysInfo	NAS-SystemInformationGSM-MAP,
		cn-DomainInformationList		CN-DomainInformationListFull		OPTIONAL,
	-- Measurement IEs
		ongoingMeasRepList				OngoingMeasRepList-r5				OPTIONAL,
	-- Radio bearer IEs
		predefinedConfigStatusList		PredefinedConfigStatusList,
		srb-InformationList				SRB-InformationSetupList-r5,
		rab-InformationList				RAB-InformationSetupList-r5			OPTIONAL,
	-- Transport channel IEs
		ul-CommonTransChInfo			UL-CommonTransChInfo-r4				OPTIONAL,
		ul-TransChInfoList				UL-AddReconfTransChInfoList			OPTIONAL,
		-- 'dummy', 'dummy1' and 'dummy2' are not used in this version of the specification,
		-- they should not be sent and if received they should be ignored.
		dummy							CHOICE {
			fdd								SEQUENCE {
				dummy1							CPCH-SetID					OPTIONAL,
				dummy2							DRAC-StaticInformationList	OPTIONAL
			},
			tdd								NULL
		}																	OPTIONAL,
		dl-CommonTransChInfo			DL-CommonTransChInfo-r4				OPTIONAL,
		dl-TransChInfoList				DL-AddReconfTransChInfoList-r5		OPTIONAL,
	-- PhyCH IEs
		tpc-CombinationInfoList			TPC-CombinationInfoList				OPTIONAL,
	-- Measurement report
		measurementReport				MeasurementReport					OPTIONAL,
	-- Other IEs
		failureCause					FailureCauseWithProtErr				OPTIONAL
}

SRNC-RelocationInfo-v680ext-IEs ::=	SEQUENCE {
	-- User equipment IEs
		ue-RadioAccessCapability-v680ext	UE-RadioAccessCapability-v680ext	OPTIONAL
}

SRNC-RelocationInfo-v6xyext-IEs ::=	SEQUENCE {
	-- User equipment IEs
		-- IE ueCapabilityContainer is used for the transparent transfer of capability information
		-- received from the UE
		ueCapabilityContainer			BIT STRING
											(CONTAINING UE-CapabilityContainer-IEs)	OPTIONAL,
	-- Radio bearer IEs
		rab-InformationSetupList		RAB-InformationSetupList-r6-ext		OPTIONAL,
	-- Measurement report
		measuredResultsOnRACHinterFreq	MeasuredResultsOnRACHinterFreq		OPTIONAL,
	-- MBMS IEs
		mbms-JoinedInformation			MBMS-JoinedInformation-r6			OPTIONAL
}

SRNC-RelocationInfo-r6-IEs ::=			SEQUENCE {
	-- Non-RRC IEs
		-- IE rb-IdentityForHOMessage includes the identity of the RB used by the source SRNC
		-- to send the message contained in the IE TargetRNC-ToSourceRNC-Container.
		-- Only included if type is "UE involved"
		rb-IdentityForHOMessage			RB-Identity							OPTIONAL,
		stateOfRRC						StateOfRRC,
		stateOfRRC-Procedure			StateOfRRC-Procedure,
	-- Ciphering related information IEs
		cipheringStatusList				CipheringStatusList-r4,
		latestConfiguredCN-Domain		CN-DomainIdentity,
		calculationTimeForCiphering		CalculationTimeForCiphering			OPTIONAL,
		count-C-List					COUNT-C-List						OPTIONAL,
		cipheringInfoPerRB-List			CipheringInfoPerRB-List-r4			OPTIONAL,
	-- Integrity protection related information IEs
		integrityProtectionStatus		IntegrityProtectionStatus,
		srb-SpecificIntegrityProtInfo	SRB-SpecificIntegrityProtInfoList	OPTIONAL,
		implementationSpecificParams	ImplementationSpecificParams		OPTIONAL,
	-- User equipment IEs
		u-RNTI							U-RNTI,
		c-RNTI							C-RNTI								OPTIONAL,
		ue-RadioAccessCapability		UE-RadioAccessCapability-r6,
		ue-RadioAccessCapability-ext	UE-RadioAccessCapabBandFDDList-r6	OPTIONAL,
		ue-Positioning-LastKnownPos		UE-Positioning-LastKnownPos			OPTIONAL,
		uESpecificBehaviourInformation1idle
										UESpecificBehaviourInformation1idle		OPTIONAL,
		uESpecificBehaviourInformation1interRAT
										UESpecificBehaviourInformation1interRAT		OPTIONAL,
		-- IE ueCapabilityContainer is used for the transparent transfer of capability information
		-- received from the UE
		ueCapabilityContainer			BIT STRING
											(CONTAINING UE-CapabilityContainer-IEs)	OPTIONAL,
	-- Other IEs
		ue-RATSpecificCapability		InterRAT-UE-RadioAccessCapabilityList-r5	OPTIONAL,
	-- UTRAN mobility IEs
		ura-Identity					URA-Identity						OPTIONAL,
	-- Core network IEs
		cn-CommonGSM-MAP-NAS-SysInfo	NAS-SystemInformationGSM-MAP,
		cn-DomainInformationList		CN-DomainInformationListFull		OPTIONAL,
	-- Measurement IEs
		ongoingMeasRepList				OngoingMeasRepList-r5				OPTIONAL,
		interRATCellInfoIndication		InterRATCellInfoIndication			OPTIONAL,
	-- Radio bearer IEs
		predefinedConfigStatusList		PredefinedConfigStatusList,
		srb-InformationList				SRB-InformationSetupList-r6,
		rab-InformationList				RAB-InformationSetupList-r6			OPTIONAL,
	-- Transport channel IEs
		ul-CommonTransChInfo			UL-CommonTransChInfo-r4				OPTIONAL,
		ul-TransChInfoList				UL-AddReconfTransChInfoList-r6		OPTIONAL,
		dl-CommonTransChInfo			DL-CommonTransChInfo-r4				OPTIONAL,
		dl-TransChInfoList				DL-AddReconfTransChInfoList-r5		OPTIONAL,
	-- PhyCH IEs
		tpc-CombinationInfoList			TPC-CombinationInfoList				OPTIONAL,
		storedCompressedModeInfo		StoredCompressedModeInfo			OPTIONAL,
	-- Measurement report
		measurementReport				MeasurementReport					OPTIONAL,
	-- Other IEs
		failureCause					FailureCauseWithProtErr				OPTIONAL,
	-- MBMS IEs
		mbms-JoinedInformation			MBMS-JoinedInformation-r6			OPTIONAL
}

-- IE definitions

CalculationTimeForCiphering ::=		SEQUENCE {
	cell-Id								CellIdentity,
	sfn									INTEGER (0..4095)
}

CipheringInfoPerRB ::=				SEQUENCE {
	dl-HFN								BIT STRING (SIZE (20..25)),
	ul-HFN								BIT STRING (SIZE (20..25))
}

CipheringInfoPerRB-r4 ::=			SEQUENCE {
	rb-Identity							RB-Identity,
	dl-HFN								BIT STRING (SIZE (20..25)),
	dl-UM-SN							BIT STRING (SIZE (7)) 				OPTIONAL,
	ul-HFN								BIT STRING (SIZE (20..25))
}

-- TABULAR: CipheringInfoPerRB-List, multiplicity value numberOfRadioBearers 
-- has been replaced with maxRB.
CipheringInfoPerRB-List ::=			SEQUENCE (SIZE (1..maxRB)) OF
										CipheringInfoPerRB

CipheringInfoPerRB-List-r4 ::=		SEQUENCE (SIZE (1..maxRB)) OF
										CipheringInfoPerRB-r4


CipheringStatus ::=					ENUMERATED {
										started, notStarted }

CipheringStatusList-r4 ::=			SEQUENCE (SIZE (1..maxCNdomains)) OF
										CipheringStatusCNdomain-r4

CipheringStatusCNdomain-r4 ::=		SEQUENCE {
		cn-DomainIdentity				CN-DomainIdentity,
		cipheringStatus					CipheringStatus,
		start-Value						START-Value
}

CN-DomainInformation-v390ext ::=		SEQUENCE {
	cn-DRX-CycleLengthCoeff				CN-DRX-CycleLengthCoefficient
}

CN-DomainInformationList-v390ext ::=	SEQUENCE (SIZE (1..maxCNdomains)) OF
										CN-DomainInformation-v390ext

CompressedModeMeasCapability-r4 ::=	SEQUENCE {
	fdd-Measurements					BOOLEAN,
	-- TABULAR: The IEs tdd-Measurements, gsm-Measurements and multiCarrierMeasurements
	-- are made optional since they are conditional based on another information element.
	-- Their absence corresponds to the case where the condition is not true.
	tdd384-Measurements					BOOLEAN								OPTIONAL,
	tdd128-Measurements					BOOLEAN								OPTIONAL,
	gsm-Measurements					GSM-Measurements					OPTIONAL,
	multiCarrierMeasurements			BOOLEAN								OPTIONAL
}

COUNT-C-List ::=						SEQUENCE (SIZE (1..maxCNdomains)) OF
										COUNT-CSingle

COUNT-CSingle ::=						SEQUENCE {
	cn-DomainIdentity					CN-DomainIdentity,
	count-C								BIT STRING (SIZE (32))			
}

DL-PhysChCapabilityFDD-r4 ::=		SEQUENCE {
	-- The IE maxNoDPCH-PDSCH-Codes only gives information on the maximum number of DPCH Codes.
	maxNoDPCH-PDSCH-Codes				INTEGER (1..8),
	maxNoPhysChBitsReceived				MaxNoPhysChBitsReceived,
	supportForSF-512					BOOLEAN,
	-- dummy, dummy2 and dummy3 are not used in this version of the specification,
	-- they should not be sent and if received they should be ignored.
	dummy								BOOLEAN,
	dummy2								SimultaneousSCCPCH-DPCH-Reception,
	dummy3								SupportOfDedicatedPilotsForChEstimation		OPTIONAL
}

DL-PhysChCapabilityFDD-r5 ::=		SEQUENCE {
	-- The IE maxNoDPCH-PDSCH-Codes only gives information on the maximum number of DPCH Codes.
	maxNoDPCH-PDSCH-Codes				INTEGER (1..8),
	maxNoPhysChBitsReceived				MaxNoPhysChBitsReceived,
	supportForSF-512					BOOLEAN,
	-- dummy, dumy2 and dummy3 are not used in this version of the specification,
	-- they should not be sent and if received they should be ignored.
	dummy								BOOLEAN,
	dummy2								SimultaneousSCCPCH-DPCH-Reception,
	dummy3								SupportOfDedicatedPilotsForChEstimation		OPTIONAL,
	fdd-hspdsch							CHOICE {
		supported							SEQUENCE {
			hsdsch-physical-layer-category		HSDSCH-physical-layer-category,
			-- dummy and dummy2 are not used in this version of the specification
			-- they should not be sent and if received they should be ignored.
			dummy								BOOLEAN,
			dummy2								BOOLEAN
		},
		unsupported							NULL
	}
}

DL-PhysChCapabilityTDD-r5 ::=		SEQUENCE {
	maxTS-PerFrame						MaxTS-PerFrame,
	maxPhysChPerFrame					MaxPhysChPerFrame,
	minimumSF							MinimumSF-DL,
	supportOfPDSCH						BOOLEAN,
	maxPhysChPerTS						MaxPhysChPerTS,
	tdd384-hspdsch						CHOICE {
		supported							HSDSCH-physical-layer-category,
		unsupported							NULL
	}
}

DL-PhysChCapabilityTDD-LCR-r5 ::=	SEQUENCE {
	maxTS-PerSubFrame					MaxTS-PerSubFrame-r4,
	maxPhysChPerFrame					MaxPhysChPerSubFrame-r4,
	minimumSF							MinimumSF-DL,
	supportOfPDSCH						BOOLEAN,
	maxPhysChPerTS						MaxPhysChPerTS,
	supportOf8PSK						BOOLEAN,
	tdd128-hspdsch						CHOICE {
		supported							HSDSCH-physical-layer-category,
		unsupported							NULL
	}
}

DL-RFC3095-Context ::=				SEQUENCE {
	rfc3095-Context-Identity			INTEGER (0..16383),
	dl-mode								ENUMERATED {u, o, r},
	dl-ref-ir							OCTET STRING ( SIZE (1..3000)),
	dl-ref-time							INTEGER (0..4294967295)		OPTIONAL,
	dl-curr-time						INTEGER (0..4294967295)		OPTIONAL,
	dl-syn-offset-id					INTEGER (0..65535)			OPTIONAL,
	dl-syn-slope-ts						INTEGER (0..4294967295)		OPTIONAL,
	dl-dyn-changed						BOOLEAN
}

ImplementationSpecificParams ::=	BIT STRING (SIZE (1..512))


IntegrityProtectionStatus ::=		ENUMERATED {
										started, notStarted }

InterRAT-UE-RadioAccessCapabilityList-r5 ::=	SEQUENCE {
	interRAT-UE-RadioAccessCapability	InterRAT-UE-RadioAccessCapabilityList,
	geranIu-RadioAccessCapability		GERANIu-RadioAccessCapability				OPTIONAL
}

-- dummy is not used in this version of the specification, it should
-- not be sent and if received it should be ignored.
MaxHcContextSpace-r5 ::=				ENUMERATED { 
											dummy, by1024, by2048, by4096, by8192, 
											by16384, by32768, by65536, by131072 }

MeasurementCapability-r4 ::=		SEQUENCE {
	downlinkCompressedMode				CompressedModeMeasCapability-r4,
	uplinkCompressedMode				CompressedModeMeasCapability-r4	
}

MeasurementCommandWithType ::=		CHOICE {
	setup								MeasurementType,
	modify								NULL,
	release								NULL
}

MeasurementCommandWithType-r4 ::=	CHOICE {
	setup								MeasurementType-r4,
	modify								NULL,
	release								NULL
}

OngoingMeasRep ::=					SEQUENCE {
	measurementIdentity					MeasurementIdentity,
	-- TABULAR: The CHOICE Measurement in the tabular description is included
	-- in MeasurementCommandWithType
	measurementCommandWithType			MeasurementCommandWithType,
	measurementReportingMode			MeasurementReportingMode			OPTIONAL,
	additionalMeasurementID-List		AdditionalMeasurementID-List		OPTIONAL
}

OngoingMeasRep-r4 ::=				SEQUENCE {
	measurementIdentity					MeasurementIdentity,
	-- TABULAR: The CHOICE Measurement in the tabular description is included
	-- in MeasurementCommandWithType-r4.
	measurementCommandWithType			MeasurementCommandWithType-r4,
	measurementReportingMode			MeasurementReportingMode			OPTIONAL,
	additionalMeasurementID-List		AdditionalMeasurementID-List		OPTIONAL
}

OngoingMeasRep-r5 ::=				SEQUENCE {
	measurementIdentity					MeasurementIdentity,
	-- TABULAR: The CHOICE Measurement in the tabular description is included
	-- in MeasurementCommandWithType-r4.
	measurementCommandWithType			MeasurementCommandWithType-r4,
	measurementReportingMode			MeasurementReportingMode			OPTIONAL,
	additionalMeasurementID-List		AdditionalMeasurementID-List		OPTIONAL,
	measurementCommand-v590ext			CHOICE {
		-- the choice "intra-frequency" shall be used for the case of intra-frequency measurement,
		-- as well as when intra-frequency events are configured for inter-frequency measurement
		intra-frequency						Intra-FreqEventCriteriaList-v590ext,
		inter-frequency						Inter-FreqEventCriteriaList-v590ext
	}		OPTIONAL,
	intraFreqReportingCriteria-1b-r5		IntraFreqReportingCriteria-1b-r5	OPTIONAL,
	intraFreqEvent-1d-r5					IntraFreqEvent-1d-r5				OPTIONAL
}

OngoingMeasRepList ::=				SEQUENCE (SIZE (1..maxNoOfMeas)) OF
										OngoingMeasRep

OngoingMeasRepList-r4 ::=			SEQUENCE (SIZE (1..maxNoOfMeas)) OF
										OngoingMeasRep-r4

OngoingMeasRepList-r5 ::=			SEQUENCE (SIZE (1..maxNoOfMeas)) OF
										OngoingMeasRep-r5

PDCP-Capability-r4 ::=				SEQUENCE {
	losslessSRNS-RelocationSupport		BOOLEAN,
	supportForRfc2507					CHOICE {
		notSupported						NULL,
		supported							MaxHcContextSpace
	},
	supportForRfc3095					CHOICE {
		notSupported						NULL,
		supported							SEQUENCE {
			maxROHC-ContextSessions				MaxROHC-ContextSessions-r4	DEFAULT s16,
			reverseCompressionDepth				INTEGER (0..65535)			DEFAULT 0
		}
	}
}

PDCP-Capability-r5 ::=				SEQUENCE {
	losslessSRNS-RelocationSupport		BOOLEAN,
	supportForRfc2507					CHOICE {
		notSupported						NULL,
		supported							MaxHcContextSpace-r5
	},
	supportForRfc3095					CHOICE {
		notSupported						NULL,
		supported							SEQUENCE {
			maxROHC-ContextSessions				MaxROHC-ContextSessions-r4	DEFAULT s16,
			reverseCompressionDepth				INTEGER (0..65535)			DEFAULT 0,
			supportForRfc3095ContextRelocation	BOOLEAN
		}
	}
}

PDCP-Capability-r6 ::=				SEQUENCE {
	losslessSRNS-RelocationSupport		BOOLEAN,
	losslessDLRLC-PDUSizeChange			ENUMERATED { true }					OPTIONAL,
	supportForRfc2507					CHOICE {
		notSupported						NULL,
		supported							MaxHcContextSpace-r5
	},
	supportForRfc3095					CHOICE {
		notSupported						NULL,
		supported							SEQUENCE {
			maxROHC-ContextSessions				MaxROHC-ContextSessions-r4	DEFAULT s16,
			reverseCompressionDepth				INTEGER (0..65535)			DEFAULT 0,
			supportForRfc3095ContextRelocation	BOOLEAN
		}
	}
}

PhysicalChannelCapability-r4 ::=		SEQUENCE {
		fddPhysChCapability					SEQUENCE {
			downlinkPhysChCapability			DL-PhysChCapabilityFDD-r4,
			uplinkPhysChCapability				UL-PhysChCapabilityFDD
		}											OPTIONAL,
		tdd384-PhysChCapability				SEQUENCE {
			downlinkPhysChCapability			DL-PhysChCapabilityTDD,
			uplinkPhysChCapability				UL-PhysChCapabilityTDD
		}											OPTIONAL,
		tdd128-PhysChCapability				SEQUENCE {
			downlinkPhysChCapability			DL-PhysChCapabilityTDD-LCR-r4,
			uplinkPhysChCapability				UL-PhysChCapabilityTDD-LCR-r4
		}											OPTIONAL
}

PhysicalChannelCapability-r5 ::=		SEQUENCE {
		fddPhysChCapability					SEQUENCE {
			downlinkPhysChCapability			DL-PhysChCapabilityFDD-r5,
			uplinkPhysChCapability				UL-PhysChCapabilityFDD
		}											OPTIONAL,
		tdd384-PhysChCapability				SEQUENCE {
			downlinkPhysChCapability			DL-PhysChCapabilityTDD-r5,
			uplinkPhysChCapability				UL-PhysChCapabilityTDD
		}											OPTIONAL,
		tdd128-PhysChCapability				SEQUENCE {
			downlinkPhysChCapability			DL-PhysChCapabilityTDD-LCR-r5,
			uplinkPhysChCapability				UL-PhysChCapabilityTDD-LCR-r4
		}											OPTIONAL
}

RF-Capability-r4 ::=				SEQUENCE {
		fddRF-Capability				SEQUENCE {
			ue-PowerClass					UE-PowerClassExt,
			txRxFrequencySeparation			TxRxFrequencySeparation
		}																OPTIONAL,
		tdd384-RF-Capability			SEQUENCE {
			ue-PowerClass					UE-PowerClassExt,
			radioFrequencyBandTDDList		RadioFrequencyBandTDDList,
			chipRateCapability				ChipRateCapability
		}																OPTIONAL,
		tdd128-RF-Capability			SEQUENCE {
			ue-PowerClass					UE-PowerClassExt,
			radioFrequencyBandTDDList		RadioFrequencyBandTDDList,
			chipRateCapability				ChipRateCapability
		}																OPTIONAL
}

RFC3095-ContextInfo ::= 			SEQUENCE {
	rb-Identity							RB-Identity,
	rfc3095-Context-List				RFC3095-Context-List
}

RFC3095-Context-List ::=			SEQUENCE (SIZE (1..maxRFC3095-CID)) OF SEQUENCE {
	dl-RFC3095-Context					DL-RFC3095-Context		OPTIONAL,
	ul-RFC3095-Context					UL-RFC3095-Context		OPTIONAL
}

RLC-Capability-r5 ::=				SEQUENCE {
	totalRLC-AM-BufferSize				TotalRLC-AM-BufferSize-r5,
	maximumRLC-WindowSize				MaximumRLC-WindowSize,
	maximumAM-EntityNumber				MaximumAM-EntityNumberRLC-Cap
}


SRB-SpecificIntegrityProtInfo ::=	SEQUENCE {
	ul-RRC-HFN							BIT STRING (SIZE (28)),
	dl-RRC-HFN							BIT STRING (SIZE (28)),
	ul-RRC-SequenceNumber				RRC-MessageSequenceNumber,
	dl-RRC-SequenceNumber				RRC-MessageSequenceNumber
}

SRB-SpecificIntegrityProtInfoList ::= SEQUENCE (SIZE (4..maxSRBsetup)) OF
										SRB-SpecificIntegrityProtInfo

StateOfRRC ::=						ENUMERATED {
										cell-DCH, cell-FACH,
										cell-PCH, ura-PCH }

StateOfRRC-Procedure ::=			ENUMERATED {
										awaitNoRRC-Message,
										awaitRB-ReleaseComplete,
										awaitRB-SetupComplete,
										awaitRB-ReconfigurationComplete,
										awaitTransportCH-ReconfigurationComplete,
										awaitPhysicalCH-ReconfigurationComplete,
										awaitActiveSetUpdateComplete,
										awaitHandoverComplete,
										sendCellUpdateConfirm,
										sendUraUpdateConfirm,
										-- dummy is not used in this version of specification
										-- It should not be sent
										dummy,
										otherStates 
}

TotalRLC-AM-BufferSize-r5 ::=		ENUMERATED { 
										kb10, kb50, kb100, kb150, kb200, 
										kb300, kb400, kb500, kb750, kb1000 }

TPC-Combination-Info ::= SEQUENCE {
		primaryCPICH-Info					PrimaryCPICH-Info,
		tpc-CombinationIndex				TPC-CombinationIndex
}

UE-MultiModeRAT-Capability-r5 ::=	SEQUENCE {
	multiRAT-CapabilityList				MultiRAT-Capability,
	multiModeCapability					MultiModeCapability,
	supportOfUTRAN-ToGERAN-NACC			BOOLEAN
}

UE-MultiModeRAT-Capability-r6 ::=	SEQUENCE {
	multiRAT-CapabilityList				MultiRAT-Capability,
	multiModeCapability					MultiModeCapability,
	supportOfUTRAN-ToGERAN-NACC			BOOLEAN,
	supportOfHandoverToGAN				ENUMERATED { doesSupportHandoverToGAN }	OPTIONAL
}

UE-Positioning-Capability-r4 ::=	SEQUENCE {
	standaloneLocMethodsSupported			BOOLEAN,
	ue-BasedOTDOA-Supported					BOOLEAN,
	networkAssistedGPS-Supported			NetworkAssistedGPS-Supported,
	supportForUE-GPS-TimingOfCellFrames		BOOLEAN,
	supportForIPDL							BOOLEAN,
	rx-tx-TimeDifferenceType2Capable 		BOOLEAN,
	validity-CellPCH-UraPCH 				ENUMERATED { true }		OPTIONAL,
	sfn-sfnType2Capability					ENUMERATED { true }			OPTIONAL
}

UE-Positioning-LastKnownPos ::=		SEQUENCE { 
		sfn								INTEGER (0..4095),
		cell-id							CellIdentity,
		positionEstimate				PositionEstimate
}

UE-RadioAccessCapability-r4 ::=		SEQUENCE {
	accessStratumReleaseIndicator		AccessStratumReleaseIndicator,
	pdcp-Capability						PDCP-Capability-r4,
	rlc-Capability						RLC-Capability,
	transportChannelCapability			TransportChannelCapability,
	rf-Capability						RF-Capability-r4,
	physicalChannelCapability			PhysicalChannelCapability-r4,
	ue-MultiModeRAT-Capability			UE-MultiModeRAT-Capability,
	securityCapability					SecurityCapability,
	ue-positioning-Capability			UE-Positioning-Capability-r4,
	measurementCapability				MeasurementCapability-r4		OPTIONAL
}

UE-RadioAccessCapability-r5 ::=		SEQUENCE {
	accessStratumReleaseIndicator		AccessStratumReleaseIndicator,
	dl-CapabilityWithSimultaneousHS-DSCHConfig
										DL-CapabilityWithSimultaneousHS-DSCHConfig	OPTIONAL,
	pdcp-Capability						PDCP-Capability-r5,
	rlc-Capability						RLC-Capability-r5,
	transportChannelCapability			TransportChannelCapability,
	rf-Capability						RF-Capability-r4,
	physicalChannelCapability			PhysicalChannelCapability-r5,
	ue-MultiModeRAT-Capability			UE-MultiModeRAT-Capability-r5,
	securityCapability					SecurityCapability,
	ue-positioning-Capability			UE-Positioning-Capability-r4,
	measurementCapability				MeasurementCapability-r4		OPTIONAL
}

UE-RadioAccessCapability-r6 ::=		SEQUENCE {
	accessStratumReleaseIndicator		AccessStratumReleaseIndicator,
	dl-CapabilityWithSimultaneousHS-DSCHConfig
										DL-CapabilityWithSimultaneousHS-DSCHConfig	OPTIONAL,
	pdcp-Capability						PDCP-Capability-r6,
	rlc-Capability						RLC-Capability-r5,
	transportChannelCapability			TransportChannelCapability,
	rf-Capability						RF-Capability-r4,
	physicalChannelCapability			PhysicalChannelCapability-r5,
	ue-MultiModeRAT-Capability			UE-MultiModeRAT-Capability-r6,
	securityCapability					SecurityCapability,
	ue-positioning-Capability			UE-Positioning-Capability-r4,
	measurementCapability				MeasurementCapability-r4		OPTIONAL
}

UE-RadioAccessCapabBandFDDList-r6 ::= SEQUENCE {
	ue-RadioAccessCapability-ext		UE-RadioAccessCapabBandFDDList,
	ue-RadioAccessCapabBandFDDList2		UE-RadioAccessCapabBandFDDList2,
	-- IE 'ue-RadioAccessCapabBandFDDList-ext' shall be included if the UE supports Band I-VII
	-- and it shall indicate measurement capabilities for Band VIII-XXII.
	ue-RadioAccessCapabBandFDDList-ext	UE-RadioAccessCapabBandFDDList-ext	OPTIONAL
}

UL-RFC3095-Context ::=				SEQUENCE {
	rfc3095-Context-Identity			INTEGER (0..16383),
	ul-mode								ENUMERATED {u, o, r},
	ul-ref-ir							OCTET STRING ( SIZE (1..3000)),
	ul-ref-time							INTEGER (0..4294967295)		OPTIONAL,
	ul-curr-time						INTEGER (0..4294967295)		OPTIONAL,
	ul-syn-offset-id					INTEGER (0..65535)			OPTIONAL,
	ul-syn-slope-ts						INTEGER (0..4294967295)		OPTIONAL,
	ul-ref-sn-1							INTEGER (0..65535)			OPTIONAL
}

END

