move rrlp-ephemeris to its own git tree

This project has been moved to git://git.osmocom.org/osmocom-lcs.git
diff --git a/rrlp-ephemeris/.gitignore b/rrlp-ephemeris/.gitignore
deleted file mode 100644
index 88b45e4..0000000
--- a/rrlp-ephemeris/.gitignore
+++ /dev/null
@@ -1,4 +0,0 @@
-asn1_gen/*
-*.o
-*.a
-rrlp-test
diff --git a/rrlp-ephemeris/COPYING b/rrlp-ephemeris/COPYING
deleted file mode 100644
index 8d7088e..0000000
--- a/rrlp-ephemeris/COPYING
+++ /dev/null
@@ -1,2 +0,0 @@
-See the included gpl-2.0.txt or gpl-3.0.txt depending on your
-preferences.
diff --git a/rrlp-ephemeris/Makefile b/rrlp-ephemeris/Makefile
deleted file mode 100644
index 742cac7..0000000
--- a/rrlp-ephemeris/Makefile
+++ /dev/null
@@ -1,44 +0,0 @@
-
-ASN1C=../../../tmp/rrlp/asn1c/asn1c/asn1c
-ASN1_INCLUDE=/home/tnt/tmp/rrlp/asn1c/skeletons
-CC=gcc
-CFLAGS=-I$(ASN1_INCLUDE) -Iasn1_gen -O3 -Wall
-
-ASN1_FILES=$(wildcard asn1/*.asn)
-
-
-all: rrlp-test
-
-
-rrlp-test: libgsm-asn1.a gps.o ubx.o ubx-parse.o rrlp.o main.o
-	$(CC) -o $@ gps.o ubx.o ubx-parse.o rrlp.o main.o -L. -lgsm-asn1 -lm
-
-
-#
-# ASN1 file autogeneration (need recursive makefile call)
-#
-
-ASN1_SOURCES = $(wildcard asn1_gen/*.c)
-ASN1_OBJECTS = $(ASN1_SOURCES:.c=.o)
-
-libgsm-asn1.a: $(ASN1_FILES)
-	mkdir -p asn1_gen && \
-	cd asn1_gen && \
-	$(ASN1C) -fskeletons-copy -fnative-types -gen-PER $(addprefix ../,$^)
-	@rm asn1_gen/converter-sample.c asn1_gen/Makefile.am.sample
-	@$(MAKE) libgsm-asn1.a.submake
-
-libgsm-asn1.a.submake: $(ASN1_OBJECTS)
-	$(AR) rcs libgsm-asn1.a $^
-
-.PHONY: libgsm-asn1.a.submake
-
-
-#
-# Clean
-#
-
-clean:
-	rm -Rf asn1_gen
-	rm -f libgsm-asn1.a *.o rrlp-test
-
diff --git a/rrlp-ephemeris/asn1/MAP-BS-Code.asn b/rrlp-ephemeris/asn1/MAP-BS-Code.asn
deleted file mode 100644
index 1d25366..0000000
--- a/rrlp-ephemeris/asn1/MAP-BS-Code.asn
+++ /dev/null
@@ -1,131 +0,0 @@
--- $Id: MAP-BS-Code.asn 28149 2009-04-25 17:45:34Z etxrab $
--- 3GPP TS 29.002 V8.9.0 (2009-04) 
--- 17.7.10	Bearer Service Codes
- 
-MAP-BS-Code {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-BS-Code (20) version11 (11)}
-
-DEFINITIONS
-
-::=
-
-BEGIN
-
-BearerServiceCode ::= OCTET STRING (SIZE (1))
-	-- This type is used to represent the code identifying a single
-	-- bearer service, a group of bearer services, or all bearer
-	-- services. The services are defined in TS 3GPP TS 22.002 [3].
-	-- The internal structure is defined as follows:
-	--
-	-- plmn-specific bearer services:
-	-- bits 87654321: defined by the HPLMN operator
-
-	-- rest of bearer services:
-	-- bit 8: 0 (unused)
-	-- bits 7654321: group (bits 7654), and rate, if applicable
-	-- (bits 321)
-
-Ext-BearerServiceCode ::= OCTET STRING (SIZE (1..5))
-	-- This type is used to represent the code identifying a single
-	-- bearer service, a group of bearer services, or all bearer
-	-- services. The services are defined in TS 3GPP TS 22.002 [3].
-	-- The internal structure is defined as follows:
-	--
-	-- OCTET 1:
-	-- plmn-specific bearer services:
-	-- bits 87654321: defined by the HPLMN operator
-	--
-	-- rest of bearer services:
-	-- bit 8: 0 (unused)
-	-- bits 7654321: group (bits 7654), and rate, if applicable
-	-- (bits 321)
-
-	-- OCTETS 2-5: reserved for future use. If received the
-    -- Ext-TeleserviceCode shall be
-	-- treated according to the exception handling defined for the
-	-- operation that uses this type. 
-
-
-	-- Ext-BearerServiceCode includes all values defined for BearerServiceCode.
-
-allBearerServices	BearerServiceCode ::= '00000000'B
-
-allDataCDA-Services	BearerServiceCode ::= '00010000'B
-dataCDA-300bps		BearerServiceCode ::= '00010001'B
-dataCDA-1200bps	BearerServiceCode ::= '00010010'B
-dataCDA-1200-75bps	BearerServiceCode ::= '00010011'B
-dataCDA-2400bps	BearerServiceCode ::= '00010100'B
-dataCDA-4800bps	BearerServiceCode ::= '00010101'B
-dataCDA-9600bps	BearerServiceCode ::= '00010110'B
-general-dataCDA	BearerServiceCode ::= '00010111'B
-
-allDataCDS-Services	BearerServiceCode ::= '00011000'B
-dataCDS-1200bps	BearerServiceCode ::= '00011010'B
-dataCDS-2400bps	BearerServiceCode ::= '00011100'B
-dataCDS-4800bps	BearerServiceCode ::= '00011101'B
-dataCDS-9600bps	BearerServiceCode ::= '00011110'B
-general-dataCDS	BearerServiceCode ::= '00011111'B
-
-allPadAccessCA-Services	BearerServiceCode ::= '00100000'B
-padAccessCA-300bps	BearerServiceCode ::= '00100001'B
-padAccessCA-1200bps	BearerServiceCode ::= '00100010'B
-padAccessCA-1200-75bps	BearerServiceCode ::= '00100011'B
-padAccessCA-2400bps	BearerServiceCode ::= '00100100'B
-padAccessCA-4800bps	BearerServiceCode ::= '00100101'B
-padAccessCA-9600bps	BearerServiceCode ::= '00100110'B
-general-padAccessCA	BearerServiceCode ::= '00100111'B
-
-allDataPDS-Services	BearerServiceCode ::= '00101000'B
-dataPDS-2400bps	BearerServiceCode ::= '00101100'B
-dataPDS-4800bps	BearerServiceCode ::= '00101101'B
-dataPDS-9600bps	BearerServiceCode ::= '00101110'B
-general-dataPDS	BearerServiceCode ::= '00101111'B
-
-allAlternateSpeech-DataCDA	BearerServiceCode ::= '00110000'B
-
-allAlternateSpeech-DataCDS	BearerServiceCode ::= '00111000'B
-
-allSpeechFollowedByDataCDA	BearerServiceCode ::= '01000000'B
-
-allSpeechFollowedByDataCDS	BearerServiceCode ::= '01001000'B
-
--- The following non-hierarchical Compound Bearer Service
--- Groups are defined in TS 3GPP TS 22.030:
-allDataCircuitAsynchronous	BearerServiceCode ::= '01010000'B
-	-- covers "allDataCDA-Services", "allAlternateSpeech-DataCDA" and
-	-- "allSpeechFollowedByDataCDA"
-allAsynchronousServices	BearerServiceCode ::= '01100000'B
-	-- covers "allDataCDA-Services", "allAlternateSpeech-DataCDA",
-	-- "allSpeechFollowedByDataCDA" and "allPadAccessCDA-Services"
-allDataCircuitSynchronous	BearerServiceCode ::= '01011000'B
-	-- covers "allDataCDS-Services", "allAlternateSpeech-DataCDS" and
-	-- "allSpeechFollowedByDataCDS"
-allSynchronousServices	BearerServiceCode ::= '01101000'B
-	-- covers "allDataCDS-Services", "allAlternateSpeech-DataCDS",
-	-- "allSpeechFollowedByDataCDS" and "allDataPDS-Services"
---
--- Compound Bearer Service Group Codes are only used in call
--- independent supplementary service operations, i.e. they
--- are not used in InsertSubscriberData or in
--- DeleteSubscriberData messages.
-
-allPLMN-specificBS	BearerServiceCode ::= '11010000'B
-plmn-specificBS-1	BearerServiceCode ::= '11010001'B
-plmn-specificBS-2	BearerServiceCode ::= '11010010'B
-plmn-specificBS-3	BearerServiceCode ::= '11010011'B
-plmn-specificBS-4	BearerServiceCode ::= '11010100'B
-plmn-specificBS-5	BearerServiceCode ::= '11010101'B
-plmn-specificBS-6	BearerServiceCode ::= '11010110'B
-plmn-specificBS-7	BearerServiceCode ::= '11010111'B
-plmn-specificBS-8	BearerServiceCode ::= '11011000'B
-plmn-specificBS-9	BearerServiceCode ::= '11011001'B
-plmn-specificBS-A	BearerServiceCode ::= '11011010'B
-plmn-specificBS-B	BearerServiceCode ::= '11011011'B
-plmn-specificBS-C	BearerServiceCode ::= '11011100'B
-plmn-specificBS-D	BearerServiceCode ::= '11011101'B
-plmn-specificBS-E	BearerServiceCode ::= '11011110'B
-plmn-specificBS-F	BearerServiceCode ::= '11011111'B
-
-END
-
diff --git a/rrlp-ephemeris/asn1/MAP-CommonDataTypes.asn b/rrlp-ephemeris/asn1/MAP-CommonDataTypes.asn
deleted file mode 100644
index f3d202e..0000000
--- a/rrlp-ephemeris/asn1/MAP-CommonDataTypes.asn
+++ /dev/null
@@ -1,633 +0,0 @@
--- $Id: MAP-CommonDataTypes.asn 30470 2009-10-10 12:37:56Z krj $
--- 3GPP TS 29.002 V8.9.0 (2009-04)
--- 17.7.8	Common data types
-
-MAP-CommonDataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-CommonDataTypes (18) version11 (11)}
-
-DEFINITIONS
-
-IMPLICIT TAGS
-
-::=
-
-BEGIN
-
-EXPORTS
-
-	-- general data types and values
-	AddressString,
-	ISDN-AddressString,
-	maxISDN-AddressLength,
-	FTN-AddressString,
-	ISDN-SubaddressString,
-	ExternalSignalInfo, 
-	Ext-ExternalSignalInfo, 
-AccessNetworkSignalInfo,
-	SignalInfo,
-	maxSignalInfoLength,
-	AlertingPattern,
-	TBCD-STRING,
-
-	-- data types for numbering and identification
-	IMSI,
-	TMSI, 
-	Identity,
-	SubscriberId,
-	IMEI,
-	HLR-List,
-	LMSI,
-	GlobalCellId,
-	NetworkResource,
-	AdditionalNetworkResource,
-	NAEA-PreferredCI, 
-	NAEA-CIC, 
-	ASCI-CallReference,
-	SubscriberIdentity,
-	PLMN-Id,
-
-	-- data types for CAMEL
-	CellGlobalIdOrServiceAreaIdOrLAI, 
-	CellGlobalIdOrServiceAreaIdFixedLength,
-	LAIFixedLength,
-
-	-- data types for subscriber management
-	BasicServiceCode,
-	Ext-BasicServiceCode,
-	EMLPP-Info,
-	EMLPP-Priority, 
-	MC-SS-Info,
-	MaxMC-Bearers,
-	MC-Bearers,
-	Ext-SS-Status,
-
-	-- data types for geographic location
-	AgeOfLocationInformation,
-	LCSClientExternalID,
-	LCSClientInternalID,
-	LCSServiceTypeID,
---- WS added exports needed by gsm_map.asn (extra asn1 file to handle older prot. ver.)
-	ProtocolId,
-	LCSServiceTypeID	
-;
-
-IMPORTS
-	TeleserviceCode,
-	Ext-TeleserviceCode
-FROM MAP-TS-Code {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-TS-Code (19) version11 (11)}
-
-	BearerServiceCode,
-	Ext-BearerServiceCode
-FROM MAP-BS-Code {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-BS-Code (20) version11 (11)}
-
-	SS-Code
-FROM MAP-SS-Code {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-SS-Code (15) version11 (11)}
-
-	ExtensionContainer
-FROM MAP-ExtensionDataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-ExtensionDataTypes (21) version11 (11)}
-;
-
-
--- general data types
-
-TBCD-STRING ::= OCTET STRING
-	-- This type (Telephony Binary Coded Decimal String) is used to
-	-- represent several digits from 0 through 9, *, #, a, b, c, two
-	-- digits per octet, each digit encoded 0000 to 1001 (0 to 9),
-	-- 1010 (*), 1011 (#), 1100 (a), 1101 (b) or 1110 (c); 1111 used
-	-- as filler when there is an odd number of digits.
-
-	-- bits 8765 of octet n encoding digit 2n
-	-- bits 4321 of octet n encoding digit 2(n-1) +1
-
-AddressString ::= OCTET STRING (SIZE (1..maxAddressLength))
-	-- This type is used to represent a number for addressing
-	-- purposes. It is composed of
-	--	a)	one octet for nature of address, and numbering plan
-	--		indicator.
-	--	b)	digits of an address encoded as TBCD-String.
-
-	-- a)	The first octet includes a one bit extension indicator, a
-	--		3 bits nature of address indicator and a 4 bits numbering
-	--		plan indicator, encoded as follows:
-
-	-- bit 8: 1  (no extension)
-
-	-- bits 765: nature of address indicator
-	--	000  unknown
-	--	001  international number
-	--	010  national significant number
-	--	011  network specific number
-	--	100  subscriber number
-	--	101  reserved
-	--	110  abbreviated number
-	--	111  reserved for extension
-
-	-- bits 4321: numbering plan indicator
-	--	0000  unknown
-	--	0001  ISDN/Telephony Numbering Plan (Rec ITU-T E.164)
-	--	0010  spare
-	--	0011  data numbering plan (ITU-T Rec X.121)
-	--	0100  telex numbering plan (ITU-T Rec F.69)
-	--	0101  spare
-	--	0110  land mobile numbering plan (ITU-T Rec E.212)
-	--	0111  spare
-	--	1000  national numbering plan
-	--	1001  private numbering plan
-	--	1111  reserved for extension
-
-	--	all other values are reserved.
-
-	-- b)	The following octets representing digits of an address
-	--		encoded as a TBCD-STRING.
-
-maxAddressLength  INTEGER ::= 20
-
-ISDN-AddressString ::= 
-			AddressString (SIZE (1..maxISDN-AddressLength))
-	-- This type is used to represent ISDN numbers.
-
-maxISDN-AddressLength  INTEGER ::= 9
-
-FTN-AddressString ::= 
-			AddressString (SIZE (1..maxFTN-AddressLength))
-	-- This type is used to represent forwarded-to numbers. 
-	-- If NAI = international the first digits represent the country code (CC)
-	-- and the network destination code (NDC) as for E.164.
-
-maxFTN-AddressLength  INTEGER ::= 15
-
-ISDN-SubaddressString ::= 
-			OCTET STRING (SIZE (1..maxISDN-SubaddressLength))
-	-- This type is used to represent ISDN subaddresses.
-	-- It is composed of
-	--	a)	one octet for type of subaddress and odd/even indicator.
-	--	b)	20 octets for subaddress information.
-
-	--	a)	The first octet includes a one bit extension indicator, a
-	--		3 bits type of subaddress and a one bit odd/even indicator,
-	--		encoded as follows:
-
-	--	bit 8: 1  (no extension)
-
-	--	bits 765: type of subaddress
-	--		000  NSAP (X.213/ISO 8348 AD2)
-	--		010  User Specified
-	--		All other values are reserved
-
-	--	bit 4: odd/even indicator
-	--		0  even number of address signals
-	--		1  odd number of address signals
-	--		The odd/even indicator is used when the type of subaddress
-	--		is "user specified" and the coding is BCD.
-
-	--	bits 321: 000 (unused)
-
-	--	b) Subaddress information.
-	--	The NSAP X.213/ISO8348AD2 address shall be formatted as specified
-	--	by octet 4 which contains the Authority and Format Identifier
-	--	(AFI). The encoding is made according to the "preferred binary
-	--	encoding" as defined in X.213/ISO834AD2. For the definition
-	--	of this type of subaddress, see ITU-T Rec I.334.
-
-	--	For User-specific subaddress, this field is encoded according
-	--	to the user specification, subject to a maximum length of 20
-	--	octets. When interworking with X.25 networks BCD coding should
-	--	be applied.
-
-maxISDN-SubaddressLength  INTEGER ::= 21
-
-ExternalSignalInfo ::= SEQUENCE {
-	protocolId	ProtocolId,
-	signalInfo	SignalInfo,
-	-- Information about the internal structure is given in
-	-- clause 7.6.9.
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	-- extensionContainer must not be used in version 2
-	...}
-
-SignalInfo ::= OCTET STRING (SIZE (1..maxSignalInfoLength))
-
-maxSignalInfoLength  INTEGER ::= 200
-	-- This NamedValue represents the theoretical maximum number of octets which is
-	-- available to carry a single instance of the SignalInfo data type,
-	-- without requiring segmentation to cope with the network layer service.
-	-- However, the actual maximum size available for an instance of the data
-	-- type may be lower, especially when other information elements
-	-- have to be included in the same component.
-
-ProtocolId ::= ENUMERATED {
-	gsm-0408  (1),
-	gsm-0806  (2),
-	gsm-BSSMAP  (3),
-	-- Value 3 is reserved and must not be used
-	ets-300102-1  (4)}
-
-Ext-ExternalSignalInfo ::= SEQUENCE {
-	ext-ProtocolId	Ext-ProtocolId,
-	signalInfo	SignalInfo,
-	-- Information about the internal structure is given in
-	-- clause 7.6.9.10
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-Ext-ProtocolId ::= ENUMERATED {
-	ets-300356  (1),
-	... 
-	 }
--- exception handling:
--- For Ext-ExternalSignalInfo sequences containing this parameter with any
--- other value than the ones listed the receiver shall ignore the whole 
--- Ext-ExternalSignalInfo sequence.
-
-AccessNetworkSignalInfo ::= SEQUENCE {
-	accessNetworkProtocolId	AccessNetworkProtocolId,
-	signalInfo	LongSignalInfo,
-	-- Information about the internal structure is given in clause 7.6.9.1
-	
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-LongSignalInfo ::= OCTET STRING (SIZE (1..maxLongSignalInfoLength))
-
-maxLongSignalInfoLength  INTEGER ::= 2560
-	-- This Named Value represents the maximum number of octets which is available
-	-- to carry a single instance of the LongSignalInfo data type using
-	-- White Book SCCP with the maximum number of segments.
-	-- It takes account of the octets used by the lower layers of the protocol, and
-	-- other information elements which may be included in the same component.
-
-AccessNetworkProtocolId ::= ENUMERATED {
-	ts3G-48006   (1),
-	ts3G-25413 (2),
-	...}
-	-- exception handling:
-	-- For AccessNetworkSignalInfo sequences containing this parameter with any
-	-- other value than the ones listed the receiver shall ignore the whole 
-	-- AccessNetworkSignalInfo sequence.
-
-AlertingPattern ::= OCTET STRING (SIZE (1) )
-	-- This type is used to represent Alerting Pattern
-
-	--	bits 8765 : 0000 (unused)
-
-	--	bits 43 : type of Pattern
-	--		00 level
-	--		01 category
-	--		10 category
-	--		all other values are reserved.
-
-	--	bits 21 : type of alerting
-
-alertingLevel-0   AlertingPattern ::= '00000000'B
-alertingLevel-1   AlertingPattern ::= '00000001'B
-alertingLevel-2   AlertingPattern ::= '00000010'B
-	-- all other values of Alerting level are reserved
-	-- Alerting Levels are defined in GSM 02.07
-	
-alertingCategory-1   AlertingPattern ::= '00000100'B
-alertingCategory-2   AlertingPattern ::= '00000101'B
-alertingCategory-3   AlertingPattern ::= '00000110'B
-alertingCategory-4   AlertingPattern ::= '00000111'B
-alertingCategory-5   AlertingPattern ::= '00001000'B
-	-- all other values of Alerting Category are reserved
-	-- Alerting categories are defined in GSM 02.07
-
--- data types for numbering and identification
-
-IMSI ::= TBCD-STRING (SIZE (3..8))
-	-- digits of MCC, MNC, MSIN are concatenated in this order.
-
-Identity ::= CHOICE {
-	imsi			IMSI,
-	imsi-WithLMSI	IMSI-WithLMSI}
-
-IMSI-WithLMSI ::= SEQUENCE {
-	imsi			IMSI,
-	lmsi			LMSI,
-	-- a special value 00000000 indicates that the LMSI is not in use
-	...}
-
-ASCI-CallReference ::= TBCD-STRING (SIZE (1..8))
-	-- digits of VGCS/VBS-area,Group-ID are concatenated in this order if there is a
-	-- VGCS/VBS-area.
-
-TMSI ::= OCTET STRING (SIZE (1..4))
-
-SubscriberId ::= CHOICE {
-	imsi			[0] IMSI,
-	tmsi			[1] TMSI}
-
-IMEI ::= TBCD-STRING (SIZE (8))
-	--	Refers to International Mobile Station Equipment Identity
-	--	and Software Version Number (SVN) defined in TS 3GPP TS 23.003 [17].
-	--	If the SVN is not present the last octet shall contain the
-	--	digit 0 and a filler.
-	--	If present the SVN shall be included in the last octet.
-
-HLR-Id ::= IMSI
-	-- leading digits of IMSI, i.e. (MCC, MNC, leading digits of
-	-- MSIN) forming HLR Id defined in TS 3GPP TS 23.003 [17].
-
-HLR-List ::= SEQUENCE SIZE (1..maxNumOfHLR-Id) OF
-				HLR-Id
-
-maxNumOfHLR-Id  INTEGER ::= 50
-
-LMSI ::= OCTET STRING (SIZE (4))
-
-GlobalCellId ::= OCTET STRING (SIZE (5..7))
-	-- Refers to Cell Global Identification defined in TS 3GPP TS 23.003 [17].
-	-- The internal structure is defined as follows:
-	-- octet 1 bits 4321	Mobile Country Code 1st digit
-	--         bits 8765	Mobile Country Code 2nd digit
-	-- octet 2 bits 4321	Mobile Country Code 3rd digit
-	--         bits 8765	Mobile Network Code 3rd digit
-	--			or filler (1111) for 2 digit MNCs
-	-- octet 3 bits 4321	Mobile Network Code 1st digit
-	--         bits 8765	Mobile Network Code 2nd digit
-	-- octets 4 and 5	Location Area Code according to TS 3GPP TS 24.008 [35]
-	-- octets 6 and 7	Cell Identity (CI) according to TS 3GPP TS 24.008 [35]
-
-NetworkResource ::= ENUMERATED {
-	plmn  (0),
-	hlr  (1),
-	vlr  (2),
-	pvlr  (3),
-	controllingMSC  (4),
-	vmsc  (5),
-	eir  (6),
-	rss  (7)}
-
-AdditionalNetworkResource ::= ENUMERATED {
-	sgsn (0),
-	ggsn (1),
-	gmlc (2),
-	gsmSCF (3),
-	nplr (4),
-	auc (5),
-	... ,
-	ue (6),
-	mme (7)}
-	-- if unknown value is received in AdditionalNetworkResource
-	-- it shall be ignored.
-
-
-NAEA-PreferredCI ::= SEQUENCE {
-	naea-PreferredCIC	[0] NAEA-CIC,
-	extensionContainer	[1] ExtensionContainer	OPTIONAL,
-	...}
-
-NAEA-CIC ::= OCTET STRING (SIZE (3))
-	-- The internal structure is defined by the Carrier Identification
-	-- parameter in ANSI T1.113.3. Carrier codes between "000" and "999" may
-	-- be encoded as 3 digits using "000" to "999" or as 4 digits using 
-	-- "0000" to "0999". Carrier codes between "1000" and "9999" are encoded
-	-- using 4 digits.
-
-SubscriberIdentity ::= CHOICE {
-	imsi			[0] IMSI,
-	msisdn		[1] ISDN-AddressString
-	}
-
-LCSClientExternalID ::= SEQUENCE {
-	externalAddress	[0] ISDN-AddressString	OPTIONAL,
-	extensionContainer	[1] ExtensionContainer	OPTIONAL,
-	... }
-
-LCSClientInternalID ::= ENUMERATED {
-	broadcastService	(0),
-	o-andM-HPLMN	(1),
-	o-andM-VPLMN	(2),
-	anonymousLocation	(3),
-	targetMSsubscribedService	(4),
-	... }
--- for a CAMEL phase 3 PLMN operator client, the value targetMSsubscribedService shall be used
-
-LCSServiceTypeID ::= INTEGER (0..127)
-	-- the integer values 0-63 are reserved for Standard LCS service types
-	-- the integer values 64-127 are reserved for Non Standard LCS service types
-
--- Standard LCS Service Types
-emergencyServices		LCSServiceTypeID ::= 0
-emergencyAlertServices		LCSServiceTypeID ::= 1
-personTracking			LCSServiceTypeID ::= 2
-fleetManagement		LCSServiceTypeID ::= 3
-assetManagement		LCSServiceTypeID ::= 4
-trafficCongestionReporting		LCSServiceTypeID ::= 5
-roadsideAssistance		LCSServiceTypeID ::= 6
-routingToNearestCommercialEnterprise		LCSServiceTypeID ::= 7
-navigation			LCSServiceTypeID ::= 8
-	--this service type is reserved for use in previous releases
-citySightseeing		LCSServiceTypeID ::= 9
-localizedAdvertising		LCSServiceTypeID ::= 10
-mobileYellowPages		LCSServiceTypeID ::= 11 
-trafficAndPublicTransportationInfo		LCSServiceTypeID ::= 12
-weather				LCSServiceTypeID ::= 13
-assetAndServiceFinding		LCSServiceTypeID ::= 14
-gaming				LCSServiceTypeID ::= 15
-findYourFriend			LCSServiceTypeID ::= 16
-dating				LCSServiceTypeID ::= 17
-chatting				LCSServiceTypeID ::= 18
-routeFinding			LCSServiceTypeID ::= 19
-whereAmI				LCSServiceTypeID ::= 20
-
--- The values of LCSServiceTypeID are defined according to 3GPP TS 22.071.
-
--- Non Standard LCS Service Types
-serv64				LCSServiceTypeID ::= 64
-serv65				LCSServiceTypeID ::= 65
-serv66				LCSServiceTypeID ::= 66
-serv67				LCSServiceTypeID ::= 67
-serv68				LCSServiceTypeID ::= 68
-serv69				LCSServiceTypeID ::= 69
-serv70				LCSServiceTypeID ::= 70
-serv71				LCSServiceTypeID ::= 71
-serv72				LCSServiceTypeID ::= 72
-serv73				LCSServiceTypeID ::= 73
-serv74				LCSServiceTypeID ::= 74
-serv75				LCSServiceTypeID ::= 75
-serv76				LCSServiceTypeID ::= 76
-serv77				LCSServiceTypeID ::= 77
-serv78				LCSServiceTypeID ::= 78
-serv79				LCSServiceTypeID ::= 79
-serv80				LCSServiceTypeID ::= 80
-serv81				LCSServiceTypeID ::= 81
-serv82				LCSServiceTypeID ::= 82
-serv83				LCSServiceTypeID ::= 83
-serv84				LCSServiceTypeID ::= 84
-serv85				LCSServiceTypeID ::= 85
-serv86				LCSServiceTypeID ::= 86
-serv87				LCSServiceTypeID ::= 87
-serv88				LCSServiceTypeID ::= 88
-serv89				LCSServiceTypeID ::= 89
-serv90				LCSServiceTypeID ::= 90
-serv91				LCSServiceTypeID ::= 91
-serv92				LCSServiceTypeID ::= 92
-serv93				LCSServiceTypeID ::= 93
-serv94				LCSServiceTypeID ::= 94
-serv95				LCSServiceTypeID ::= 95
-serv96				LCSServiceTypeID ::= 96
-serv97				LCSServiceTypeID ::= 97
-serv98				LCSServiceTypeID ::= 98
-serv99				LCSServiceTypeID ::= 99
-serv100				LCSServiceTypeID ::= 100
-serv101				LCSServiceTypeID ::= 101
-serv102				LCSServiceTypeID ::= 102
-serv103				LCSServiceTypeID ::= 103
-serv104				LCSServiceTypeID ::= 104
-serv105				LCSServiceTypeID ::= 105
-serv106				LCSServiceTypeID ::= 106
-serv107				LCSServiceTypeID ::= 107
-serv108				LCSServiceTypeID ::= 108
-serv109				LCSServiceTypeID ::= 109
-serv110				LCSServiceTypeID ::= 110
-serv111				LCSServiceTypeID ::= 111
-serv112				LCSServiceTypeID ::= 112
-serv113				LCSServiceTypeID ::= 113
-serv114				LCSServiceTypeID ::= 114
-serv115				LCSServiceTypeID ::= 115
-serv116				LCSServiceTypeID ::= 116
-serv117				LCSServiceTypeID ::= 117
-serv118				LCSServiceTypeID ::= 118
-serv119				LCSServiceTypeID ::= 119
-serv120				LCSServiceTypeID ::= 120
-serv121				LCSServiceTypeID ::= 121
-serv122				LCSServiceTypeID ::= 122
-serv123				LCSServiceTypeID ::= 123
-serv124				LCSServiceTypeID ::= 124
-serv125				LCSServiceTypeID ::= 125
-serv126				LCSServiceTypeID ::= 126
-serv127				LCSServiceTypeID ::= 127
-
-PLMN-Id ::= OCTET STRING (SIZE (3))
-	-- The internal structure is defined as follows:
-	-- octet 1 bits 4321	Mobile Country Code 1st digit
-	--         bits 8765	Mobile Country Code 2nd digit
-	-- octet 2 bits 4321	Mobile Country Code 3rd digit
-	--         bits 8765	Mobile Network Code 3rd digit
-	--			or filler (1111) for 2 digit MNCs
-	-- octet 3 bits 4321	Mobile Network Code 1st digit
-	--         bits 8765	Mobile Network Code 2nd digit
-
--- data types for CAMEL
-
-CellGlobalIdOrServiceAreaIdOrLAI ::= CHOICE {
-	cellGlobalIdOrServiceAreaIdFixedLength	[0] CellGlobalIdOrServiceAreaIdFixedLength,
-	laiFixedLength	[1] LAIFixedLength}
-
-CellGlobalIdOrServiceAreaIdFixedLength ::= OCTET STRING (SIZE (7))
-	-- Refers to Cell Global Identification or Service Are Identification
-	-- defined in 3GPP TS 23.003.
-	-- The internal structure is defined as follows:
-	-- octet 1 bits 4321	Mobile Country Code 1st digit
-	--         bits 8765	Mobile Country Code 2nd digit
-	-- octet 2 bits 4321	Mobile Country Code 3rd digit
-	--         bits 8765	Mobile Network Code 3rd digit
-	--			or filler (1111) for 2 digit MNCs
-	-- octet 3 bits 4321	Mobile Network Code 1st digit
-	--         bits 8765	Mobile Network Code 2nd digit
-	-- octets 4 and 5	Location Area Code according to 3GPP TS 24.008
-	-- octets 6 and 7	Cell Identity (CI) value or 
-	-- 			Service Area Code (SAC) value 
-	--			according to 3GPP TS 23.003
-
-LAIFixedLength ::= OCTET STRING (SIZE (5))
-	-- Refers to Location Area Identification defined in 3GPP TS 23.003 [17].
-	-- The internal structure is defined as follows:
-	-- octet 1 bits 4321	Mobile Country Code 1st digit
-	--         bits 8765	Mobile Country Code 2nd digit
-	-- octet 2 bits 4321	Mobile Country Code 3rd digit
-	--         bits 8765	Mobile Network Code 3rd digit
-	--			or filler (1111) for 2 digit MNCs
-	-- octet 3 bits 4321	Mobile Network Code 1st digit
-	--         bits 8765	Mobile Network Code 2nd digit
-	-- octets 4 and 5	Location Area Code according to 3GPP TS 24.008 [35]
-
--- data types for subscriber management
-
-BasicServiceCode ::= CHOICE {
-	bearerService	[2] BearerServiceCode,
-	teleservice	[3] TeleserviceCode}
-
-Ext-BasicServiceCode ::= CHOICE {
-	ext-BearerService	[2] Ext-BearerServiceCode,
-	ext-Teleservice	[3] Ext-TeleserviceCode}
-
-EMLPP-Info ::= SEQUENCE {
-	maximumentitledPriority	EMLPP-Priority,
-	defaultPriority	EMLPP-Priority,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-EMLPP-Priority ::= INTEGER (0..15)
-	-- The mapping from the values A,B,0,1,2,3,4 to the integer-value is
-	-- specified as follows where A is the highest and 4 is the lowest
-	-- priority level
-	-- the integer values 7-15 are spare and shall be mapped to value 4
-
-priorityLevelA		EMLPP-Priority ::= 6
-priorityLevelB		EMLPP-Priority ::= 5
-priorityLevel0		EMLPP-Priority ::= 0
-priorityLevel1		EMLPP-Priority ::= 1
-priorityLevel2		EMLPP-Priority ::= 2
-priorityLevel3		EMLPP-Priority ::= 3
-priorityLevel4		EMLPP-Priority ::= 4
-
-MC-SS-Info ::= SEQUENCE {
-	ss-Code		[0] SS-Code,
-	ss-Status		[1] Ext-SS-Status,
-	nbrSB		[2] MaxMC-Bearers,
-	nbrUser		[3] MC-Bearers,
-	extensionContainer	[4] ExtensionContainer	OPTIONAL,
-	...}
-
-MaxMC-Bearers ::= INTEGER (2..maxNumOfMC-Bearers)
-
-MC-Bearers ::= INTEGER (1..maxNumOfMC-Bearers)
-
-maxNumOfMC-Bearers  INTEGER ::= 7
-
-Ext-SS-Status ::= OCTET STRING (SIZE (1..5))
-
-	-- OCTET 1:
-	--
-	-- bits 8765: 0000 (unused)
-	-- bits 4321: Used to convey the "P bit","R bit","A bit" and "Q bit",
-	--		    representing supplementary service state information
-	--		    as defined in TS 3GPP TS 23.011 [22]
-
-	-- bit 4: "Q bit"
-
-	-- bit 3: "P bit"
-
-	-- bit 2: "R bit"
-
-	-- bit 1: "A bit"
-
-	-- OCTETS 2-5: reserved for future use. They shall be discarded if
-	-- received and not understood.
-
-
-	-- data types for geographic location
-
-AgeOfLocationInformation ::= INTEGER (0..32767)
--- the value represents the elapsed time in minutes since the last
--- network contact of the mobile station (i.e. the actuality of the
--- location information).
--- value "0" indicates that the MS is currently in contact with the
---           network
--- value "32767" indicates that the location information is at least
---               32767 minutes old
-
-END
-
diff --git a/rrlp-ephemeris/asn1/MAP-ER-DataTypes.asn b/rrlp-ephemeris/asn1/MAP-ER-DataTypes.asn
deleted file mode 100644
index d0b90fc..0000000
--- a/rrlp-ephemeris/asn1/MAP-ER-DataTypes.asn
+++ /dev/null
@@ -1,415 +0,0 @@
--- $Id: MAP-ER-DataTypes.asn 28149 2009-04-25 17:45:34Z etxrab $
--- 3GPP TS 29.002 V8.9.0 (2009-04) 
--- 17.7.7	Error data types
-
-MAP-ER-DataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-ER-DataTypes (17) version11 (11)}
-
-DEFINITIONS
-
-IMPLICIT TAGS
-
-::=
-
-BEGIN
-
-EXPORTS
-	RoamingNotAllowedParam,
-	CallBarredParam,
-	CUG-RejectParam,
-	SS-IncompatibilityCause,
-	PW-RegistrationFailureCause,
-	SM-DeliveryFailureCause,
-	SystemFailureParam,
-	DataMissingParam,
-	UnexpectedDataParam,
-	FacilityNotSupParam,
-	OR-NotAllowedParam,
-	UnknownSubscriberParam,
-	NumberChangedParam,
-	UnidentifiedSubParam,
-	IllegalSubscriberParam,
-	IllegalEquipmentParam,
-	BearerServNotProvParam,
-	TeleservNotProvParam,
-	TracingBufferFullParam,
-	NoRoamingNbParam,
-	AbsentSubscriberParam,
-	BusySubscriberParam,
-	NoSubscriberReplyParam,
-	ForwardingViolationParam,
-	ForwardingFailedParam, 
-	ATI-NotAllowedParam,
-	SubBusyForMT-SMS-Param,
-	MessageWaitListFullParam,
-	AbsentSubscriberSM-Param,
-	AbsentSubscriberDiagnosticSM,
-	ResourceLimitationParam,
-	NoGroupCallNbParam,
-	IncompatibleTerminalParam,
-	ShortTermDenialParam,
-	LongTermDenialParam,
-	UnauthorizedRequestingNetwork-Param,
-	UnauthorizedLCSClient-Param,
-	PositionMethodFailure-Param,
-UnknownOrUnreachableLCSClient-Param,
-	MM-EventNotSupported-Param,
-ATSI-NotAllowedParam,
-ATM-NotAllowedParam,
-IllegalSS-OperationParam,
-SS-NotAvailableParam,
-SS-SubscriptionViolationParam,
-InformationNotAvailableParam,
-TargetCellOutsideGCA-Param,
-OngoingGroupCallParam
-
-;
-
-IMPORTS
-	SS-Status
-FROM MAP-SS-DataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-SS-DataTypes (14) version11 (11)}
-
-	SignalInfo,
-	BasicServiceCode,
-	NetworkResource,
-	AdditionalNetworkResource
-FROM MAP-CommonDataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-CommonDataTypes (18) version11 (11)}
-
-
-	SS-Code
-FROM MAP-SS-Code {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-SS-Code (15) version11 (11)}
-
-	ExtensionContainer
-FROM MAP-ExtensionDataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-ExtensionDataTypes (21) version11 (11)}
-;
-
-RoamingNotAllowedParam ::= SEQUENCE {
-	roamingNotAllowedCause	RoamingNotAllowedCause,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...,
-	additionalRoamingNotAllowedCause	[0] AdditionalRoamingNotAllowedCause OPTIONAL }
-
---	if the additionalRoamingNotallowedCause is received by the MSC/VLR or SGSN then the 
---	roamingNotAllowedCause shall be discarded.
-
-AdditionalRoamingNotAllowedCause ::= ENUMERATED {
-	supportedRAT-TypesNotAllowed (0),
-	...}
-
-RoamingNotAllowedCause ::= ENUMERATED {
-	plmnRoamingNotAllowed  (0),
-	operatorDeterminedBarring  (3)}
-
-CallBarredParam ::= CHOICE {
-	callBarringCause	CallBarringCause,
-	-- call BarringCause must not be used in version 3 and higher
-	extensibleCallBarredParam	ExtensibleCallBarredParam
-	-- extensibleCallBarredParam must not be used in version <3
-	}
-
-CallBarringCause ::= ENUMERATED {
-	barringServiceActive  (0),
-	operatorBarring  (1)}
-
-ExtensibleCallBarredParam ::= SEQUENCE {
-	callBarringCause	CallBarringCause	OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	... ,
-	unauthorisedMessageOriginator	[1] NULL		OPTIONAL }
-
-CUG-RejectParam ::= SEQUENCE {
-	cug-RejectCause	CUG-RejectCause	OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-CUG-RejectCause ::= ENUMERATED {
-	incomingCallsBarredWithinCUG  (0),
-	subscriberNotMemberOfCUG  (1),
-	requestedBasicServiceViolatesCUG-Constraints  (5),
-	calledPartySS-InteractionViolation  (7)}
-
-SS-IncompatibilityCause ::= SEQUENCE {
-	ss-Code		[1] SS-Code	OPTIONAL,
-	basicService	BasicServiceCode	OPTIONAL,
-	ss-Status		[4] SS-Status	OPTIONAL,
-	...}
-
-PW-RegistrationFailureCause ::= ENUMERATED {
-	undetermined  (0),
-	invalidFormat  (1),
-	newPasswordsMismatch  (2)}
-
-SM-EnumeratedDeliveryFailureCause ::= ENUMERATED {
-	memoryCapacityExceeded  (0),
-	equipmentProtocolError  (1),
-	equipmentNotSM-Equipped  (2),
-	unknownServiceCentre  (3),
-	sc-Congestion  (4),
-	invalidSME-Address  (5),
-	subscriberNotSC-Subscriber  (6)}
-
-SM-DeliveryFailureCause ::= SEQUENCE {
-	sm-EnumeratedDeliveryFailureCause	SM-EnumeratedDeliveryFailureCause,
-	diagnosticInfo	SignalInfo	OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-AbsentSubscriberSM-Param ::= SEQUENCE {
-	absentSubscriberDiagnosticSM	AbsentSubscriberDiagnosticSM	OPTIONAL,
-	-- AbsentSubscriberDiagnosticSM can be either for non-GPRS 
-	-- or for GPRS
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...,
-	additionalAbsentSubscriberDiagnosticSM  	[0] 	AbsentSubscriberDiagnosticSM	OPTIONAL }
-	-- if received, additionalAbsentSubscriberDiagnosticSM 
-	-- is for GPRS and absentSubscriberDiagnosticSM is 
-	-- for non-GPRS
-
-AbsentSubscriberDiagnosticSM ::= INTEGER (0..255)
-	-- AbsentSubscriberDiagnosticSM values are defined in 3GPP TS 23.040
-
-SystemFailureParam ::= CHOICE {
-	networkResource	NetworkResource,
-	-- networkResource must not be used in version 3
-	extensibleSystemFailureParam	ExtensibleSystemFailureParam
-	-- extensibleSystemFailureParam must not be used in version <3
-	}
-
-ExtensibleSystemFailureParam ::= SEQUENCE {
-	networkResource	NetworkResource	OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...,
-	additionalNetworkResource	[0] AdditionalNetworkResource	OPTIONAL,
-	failureCauseParam	[1] FailureCauseParam	OPTIONAL }
-
-FailureCauseParam ::= ENUMERATED {
-	limitReachedOnNumberOfConcurrentLocationRequests (0),
-	... }
-	-- if unknown value is received in FailureCauseParam it shall be ignored
-
-
-DataMissingParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-UnexpectedDataParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-FacilityNotSupParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...,
-	shapeOfLocationEstimateNotSupported [0]	NULL		OPTIONAL,
-	neededLcsCapabilityNotSupportedInServingNode [1] NULL	OPTIONAL }
-
-OR-NotAllowedParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-UnknownSubscriberParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...,
-	unknownSubscriberDiagnostic	UnknownSubscriberDiagnostic	OPTIONAL}
-
-UnknownSubscriberDiagnostic ::= ENUMERATED {
-	imsiUnknown  (0),
-	gprs-eps-SubscriptionUnknown  (1),
-	...,
-	npdbMismatch  (2)}
-	-- if unknown values are received in 	
-	-- UnknownSubscriberDiagnostic they shall be discarded
-
-NumberChangedParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-UnidentifiedSubParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-IllegalSubscriberParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-IllegalEquipmentParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-BearerServNotProvParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-TeleservNotProvParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-TracingBufferFullParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-NoRoamingNbParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-AbsentSubscriberParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...,
-	absentSubscriberReason	[0] AbsentSubscriberReason	OPTIONAL}
-
-AbsentSubscriberReason ::= ENUMERATED {
-	imsiDetach (0),
-	restrictedArea (1),
-	noPageResponse (2),
-	... ,
-	purgedMS (3)}
--- exception handling: at reception of other values than the ones listed the 
--- AbsentSubscriberReason shall be ignored. 
--- The AbsentSubscriberReason: purgedMS is defined for the Super-Charger feature 
--- (see TS 23.116). If this value is received in a Provide Roaming Number response
--- it shall be mapped to the AbsentSubscriberReason: imsiDetach in the Send Routeing
--- Information response
-
-BusySubscriberParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...,
-	ccbs-Possible	[0] NULL		OPTIONAL,
-	ccbs-Busy		[1] NULL		OPTIONAL}
-
-NoSubscriberReplyParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-ForwardingViolationParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-ForwardingFailedParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-ATI-NotAllowedParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-ATSI-NotAllowedParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-ATM-NotAllowedParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-IllegalSS-OperationParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-SS-NotAvailableParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-SS-SubscriptionViolationParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-InformationNotAvailableParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-SubBusyForMT-SMS-Param ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	... ,
-	gprsConnectionSuspended	NULL			OPTIONAL }
-	-- If GprsConnectionSuspended is not understood it shall 
-	-- be discarded
-
-MessageWaitListFullParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-ResourceLimitationParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-NoGroupCallNbParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-IncompatibleTerminalParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-ShortTermDenialParam ::= SEQUENCE {
-	...}
-
-LongTermDenialParam ::= SEQUENCE {
-	...}
-
-UnauthorizedRequestingNetwork-Param ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-UnauthorizedLCSClient-Param ::= SEQUENCE {
-	unauthorizedLCSClient-Diagnostic	[0] UnauthorizedLCSClient-Diagnostic	OPTIONAL,
-	extensionContainer	[1] ExtensionContainer			OPTIONAL,
-	... }
-
-UnauthorizedLCSClient-Diagnostic ::= ENUMERATED {
-	noAdditionalInformation (0),
-	clientNotInMSPrivacyExceptionList (1),
-	callToClientNotSetup (2),
-	privacyOverrideNotApplicable (3),
-	disallowedByLocalRegulatoryRequirements (4),
-	...,
-	unauthorizedPrivacyClass (5),
-	unauthorizedCallSessionUnrelatedExternalClient (6),
-	unauthorizedCallSessionRelatedExternalClient (7) }
---	exception handling:
---	any unrecognized value shall be ignored
-
-PositionMethodFailure-Param ::= SEQUENCE {
-	positionMethodFailure-Diagnostic	[0] PositionMethodFailure-Diagnostic	OPTIONAL,
-	extensionContainer	[1] ExtensionContainer			OPTIONAL,
-	... }
-
-PositionMethodFailure-Diagnostic ::= ENUMERATED {
-	congestion  (0),
-	insufficientResources  (1),
-	insufficientMeasurementData  (2),
-	inconsistentMeasurementData  (3),
-	locationProcedureNotCompleted  (4),
-	locationProcedureNotSupportedByTargetMS  (5),
-	qoSNotAttainable  (6),
-	positionMethodNotAvailableInNetwork	(7),
-	positionMethodNotAvailableInLocationArea	(8),
-	... }
---	exception handling:
---	any unrecognized value shall be ignored
-
-UnknownOrUnreachableLCSClient-Param ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-MM-EventNotSupported-Param ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-TargetCellOutsideGCA-Param ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-OngoingGroupCallParam ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-
-END
-
diff --git a/rrlp-ephemeris/asn1/MAP-ExtensionDataTypes.asn b/rrlp-ephemeris/asn1/MAP-ExtensionDataTypes.asn
deleted file mode 100644
index d94c057..0000000
--- a/rrlp-ephemeris/asn1/MAP-ExtensionDataTypes.asn
+++ /dev/null
@@ -1,74 +0,0 @@
--- $Id: MAP-ExtensionDataTypes.asn 28149 2009-04-25 17:45:34Z etxrab $
--- MAP-ExtensionDataTypes.asn
---
--- Taken from 3GPP TS 29.002 V8.9.0 (2009-04)
---
--- 17.7.11 Extension data types
---
-
-MAP-ExtensionDataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-ExtensionDataTypes (21) version11 (11)}
-
-DEFINITIONS
-
-IMPLICIT TAGS
-
-::=
-
-BEGIN
-
-EXPORTS
-
-	PrivateExtension,
-	ExtensionContainer,
-	SLR-ArgExtensionContainer;
-
-
--- IOC for private MAP extensions
-
-
-MAP-EXTENSION  ::= CLASS {
-	&ExtensionType				OPTIONAL,
-	&extensionId 	OBJECT IDENTIFIER }
-	-- The length of the Object Identifier shall not exceed 16 octets and the
-	-- number of components of the Object Identifier shall not exceed 16
-
--- data types
-
-ExtensionContainer ::= SEQUENCE {
-	privateExtensionList	[0]PrivateExtensionList	OPTIONAL, 
-	pcs-Extensions	[1]PCS-Extensions	OPTIONAL,
-	...}
-
-SLR-ArgExtensionContainer ::= SEQUENCE {
-	privateExtensionList	[0]PrivateExtensionList	OPTIONAL, 
-	slr-Arg-PCS-Extensions	[1]SLR-Arg-PCS-Extensions	OPTIONAL,
-	...}
-
-PrivateExtensionList ::= SEQUENCE SIZE (1..maxNumOfPrivateExtensions) OF
-				PrivateExtension
-
-PrivateExtension ::= SEQUENCE {
-	extId		MAP-EXTENSION.&extensionId
-				({ExtensionSet}),
-	extType		MAP-EXTENSION.&ExtensionType
-				({ExtensionSet}{@extId})	OPTIONAL}
-
-maxNumOfPrivateExtensions  INTEGER ::= 10
-
-ExtensionSet		MAP-EXTENSION ::=
-		{...
-		 -- ExtensionSet is the set of all defined private extensions
-	}
-	-- Unsupported private extensions shall be discarded if received.
-
-PCS-Extensions ::= SEQUENCE {
-	...}
-
-SLR-Arg-PCS-Extensions ::= SEQUENCE {
-	...,
-	na-ESRK-Request	[0]	NULL		OPTIONAL }
-
-END
-
diff --git a/rrlp-ephemeris/asn1/MAP-LCS-DataTypes.asn b/rrlp-ephemeris/asn1/MAP-LCS-DataTypes.asn
deleted file mode 100644
index 2434b89..0000000
--- a/rrlp-ephemeris/asn1/MAP-LCS-DataTypes.asn
+++ /dev/null
@@ -1,657 +0,0 @@
--- $Id: MAP-LCS-DataTypes.asn 28149 2009-04-25 17:45:34Z etxrab $
--- MAP-LCS-DataTypes.asn
---
--- Taken from 3GPP TS 29.002  V8.9.0 (2009-04)
---
--- 17.7.13 Location service data types
---
-
-MAP-LCS-DataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-LCS-DataTypes (25) version11 (11)}
-
-DEFINITIONS
-IMPLICIT TAGS
-::=
-BEGIN
-
-EXPORTS
-	RoutingInfoForLCS-Arg,
-	RoutingInfoForLCS-Res,
-	ProvideSubscriberLocation-Arg,
-	ProvideSubscriberLocation-Res,
-	SubscriberLocationReport-Arg,
-	SubscriberLocationReport-Res,
-LocationType, 
-DeferredLocationEventType,
-LCSClientName,
-LCS-QoS,
-Horizontal-Accuracy,
-ResponseTime,
-Ext-GeographicalInformation, 
-VelocityEstimate,
-SupportedGADShapes,
-Add-GeographicalInformation,
-LCSRequestorID, 
-LCS-ReferenceNumber,
-LCSCodeword,
-AreaEventInfo,
-ReportingPLMNList,
-PeriodicLDRInfo,
-SequenceNumber
-;
-
-IMPORTS
-	AddressString,
-	ISDN-AddressString,
-	IMEI,
-	IMSI,
-	LMSI,
-	SubscriberIdentity,
-	AgeOfLocationInformation,
-	LCSClientExternalID,
-	LCSClientInternalID,
-LCSServiceTypeID,
-CellGlobalIdOrServiceAreaIdOrLAI,
-PLMN-Id
-FROM MAP-CommonDataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-CommonDataTypes (18) version11 (11)}
-
-	ExtensionContainer,
-	SLR-ArgExtensionContainer
-FROM MAP-ExtensionDataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-ExtensionDataTypes (21) version11 (11)}
-
-	USSD-DataCodingScheme,
-USSD-String
-FROM MAP-SS-DataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Network (1) modules (3)
-   map-SS-DataTypes (14) version11 (11)}
-
-	APN,
-	GSN-Address,
-	SupportedLCS-CapabilitySets
-FROM MAP-MS-DataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-MS-DataTypes (11) version11 (11)}
-
-	Additional-Number
-FROM MAP-SM-DataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-SM-DataTypes (16) version11 (11)}
-;
-
-
-RoutingInfoForLCS-Arg ::= SEQUENCE {
-	mlcNumber		[0] ISDN-AddressString,
-	targetMS		[1] SubscriberIdentity,
-	extensionContainer	[2] ExtensionContainer	OPTIONAL,
-	...}
-
-RoutingInfoForLCS-Res ::= SEQUENCE {
-	targetMS		[0] SubscriberIdentity,
-	lcsLocationInfo	[1] LCSLocationInfo,
-	extensionContainer	[2] ExtensionContainer	OPTIONAL,
-	...,
-	v-gmlc-Address	[3]	GSN-Address	OPTIONAL,
-	h-gmlc-Address	[4]	GSN-Address	OPTIONAL,
-	ppr-Address	[5]	GSN-Address	OPTIONAL,
-	additional-v-gmlc-Address	[6]	GSN-Address	OPTIONAL }
-
-LCSLocationInfo ::= SEQUENCE {
-	networkNode-Number	ISDN-AddressString,
-	-- NetworkNode-number can be either msc-number or sgsn-number
-	lmsi			[0] LMSI		OPTIONAL,
-	extensionContainer	[1] ExtensionContainer	OPTIONAL,
-	... ,
-	gprsNodeIndicator 	[2] NULL		OPTIONAL,
-	-- gprsNodeIndicator is set only if the SGSN number is sent as the Network Node Number
-	additional-Number	[3] Additional-Number	OPTIONAL,
-	supportedLCS-CapabilitySets	[4]	SupportedLCS-CapabilitySets	OPTIONAL,
-	additional-LCS-CapabilitySets	[5]	SupportedLCS-CapabilitySets	OPTIONAL
-	}
-
-ProvideSubscriberLocation-Arg ::= SEQUENCE {
-	locationType	LocationType,
-	mlc-Number	ISDN-AddressString,
-	lcs-ClientID	[0] LCS-ClientID	OPTIONAL,
-	privacyOverride	[1] NULL		OPTIONAL,
-	imsi			[2] IMSI		OPTIONAL,
-	msisdn		[3] ISDN-AddressString	OPTIONAL,
-	lmsi			[4] LMSI		OPTIONAL,
-	imei			[5] IMEI		OPTIONAL,
-	lcs-Priority	[6] LCS-Priority	OPTIONAL,
-	lcs-QoS		[7] LCS-QoS	OPTIONAL,
-	extensionContainer	[8] ExtensionContainer	OPTIONAL,
-	... ,
-	supportedGADShapes	[9]	SupportedGADShapes	OPTIONAL,
-	lcs-ReferenceNumber	[10]	LCS-ReferenceNumber	OPTIONAL,
-	lcsServiceTypeID	[11]	LCSServiceTypeID	OPTIONAL,
-	lcsCodeword	[12]	LCSCodeword	OPTIONAL,
-	lcs-PrivacyCheck	[13]	LCS-PrivacyCheck	OPTIONAL,
-	areaEventInfo	[14]	AreaEventInfo	OPTIONAL,
-	h-gmlc-Address	[15]	GSN-Address	OPTIONAL,
-	mo-lrShortCircuitIndicator	[16] NULL		OPTIONAL,
-	periodicLDRInfo	[17] PeriodicLDRInfo	OPTIONAL,
-	reportingPLMNList	[18] ReportingPLMNList	OPTIONAL }
-
-	-- one of imsi or msisdn is mandatory
-	-- If a location estimate type indicates activate deferred location or cancel deferred 
-	-- location, a lcs-Reference number shall be included.
-
-LocationType ::= SEQUENCE {
-	locationEstimateType	[0] LocationEstimateType,
-	...,
-	deferredLocationEventType	[1] DeferredLocationEventType	OPTIONAL }
-
-LocationEstimateType ::= ENUMERATED {
-	currentLocation	(0),
-	currentOrLastKnownLocation	(1),
-	initialLocation	(2),
-	...,
-	activateDeferredLocation	(3),
-	cancelDeferredLocation	(4) ,
-	notificationVerificationOnly	(5) }
---	exception handling:
---	a ProvideSubscriberLocation-Arg containing an unrecognized LocationEstimateType
---	shall be rejected by the receiver with a return error cause of unexpected data value
-
-DeferredLocationEventType ::= BIT STRING {
-	msAvailable	(0) ,
-	enteringIntoArea	(1),
-	leavingFromArea	(2),
-	beingInsideArea	(3) ,
-	periodicLDR	(4)  } (SIZE (1..16)) 
--- beingInsideArea is always treated as oneTimeEvent regardless of the possible value
--- of occurrenceInfo inside areaEventInfo.
--- exception handling:
--- a ProvideSubscriberLocation-Arg containing other values than listed above in 
--- DeferredLocationEventType shall be rejected by the receiver with a return error cause of 
--- unexpected data value.
-
-LCS-ClientID ::= SEQUENCE {
-	lcsClientType	[0] LCSClientType,
-	lcsClientExternalID	[1] LCSClientExternalID	OPTIONAL,
-	lcsClientDialedByMS	[2] AddressString	OPTIONAL,
-	lcsClientInternalID	[3] LCSClientInternalID	OPTIONAL,
-	lcsClientName	[4] LCSClientName	OPTIONAL,
-	...,
-	lcsAPN		[5] APN		OPTIONAL,
-	lcsRequestorID	[6] LCSRequestorID	OPTIONAL }
-
-LCSClientType ::= ENUMERATED {
-	emergencyServices	(0),
-	valueAddedServices	(1),
-	plmnOperatorServices	(2),
-	lawfulInterceptServices	(3),
-	... }
-	--	exception handling:
-	--	unrecognized values may be ignored if the LCS client uses the privacy override
-	--	otherwise, an unrecognized value shall be treated as unexpected data by a receiver
-	--	a return error shall then be returned if received in a MAP invoke 
-
-LCSClientName ::= SEQUENCE {
-	dataCodingScheme	[0] USSD-DataCodingScheme,
-	nameString	[2] NameString,
-	...,
-	lcs-FormatIndicator	[3] LCS-FormatIndicator	OPTIONAL }
-
--- The USSD-DataCodingScheme shall indicate use of the default alphabet through the
--- following encoding
---	bit	7 6 5 4 3 2 1 0
---		0 0 0 0 1 1 1 1
-
-NameString ::= USSD-String (SIZE (1..maxNameStringLength))
-
-maxNameStringLength  INTEGER ::= 63
-
-LCSRequestorID ::= SEQUENCE {
-	dataCodingScheme	[0] USSD-DataCodingScheme,
-	requestorIDString	[1] RequestorIDString,
-	...,
-	lcs-FormatIndicator	[2] LCS-FormatIndicator	OPTIONAL }
-
-RequestorIDString ::= USSD-String (SIZE (1..maxRequestorIDStringLength))
-
-maxRequestorIDStringLength  INTEGER ::= 63
-
-LCS-FormatIndicator ::= ENUMERATED {
-	logicalName	(0),
-	e-mailAddress	(1),
-	msisdn		(2),
-	url			(3),
-	sipUrl		(4),
-	... }
-
-LCS-Priority ::= OCTET STRING (SIZE (1))
-	-- 0 = highest priority
-	-- 1 = normal priority
-	-- all other values treated as 1 
-
-LCS-QoS ::= SEQUENCE {
-	horizontal-accuracy	[0] Horizontal-Accuracy	OPTIONAL,
-	verticalCoordinateRequest	[1] NULL		OPTIONAL,
-	vertical-accuracy	[2] Vertical-Accuracy	OPTIONAL,	responseTime	[3] ResponseTime	OPTIONAL,
-	extensionContainer	[4] ExtensionContainer	OPTIONAL,
-	...,
-	velocityRequest	[5] NULL		OPTIONAL
-}
-
-Horizontal-Accuracy ::= OCTET STRING (SIZE (1))
-	-- bit 8 = 0
-	-- bits 7-1 = 7 bit Uncertainty Code defined in 3GPP TS 23.032. The horizontal location 
-	-- error should be less than the error indicated by the uncertainty code with 67%
-	-- confidence.
-
-Vertical-Accuracy ::= OCTET STRING (SIZE (1))
-	-- bit 8 = 0
-	-- bits 7-1 = 7 bit Vertical Uncertainty Code defined in 3GPP TS 23.032. 
-	-- The vertical location error should be less than the error indicated 
-	-- by the uncertainty code with 67% confidence.
-
-ResponseTime ::= SEQUENCE {
-	responseTimeCategory	ResponseTimeCategory,
-	...}
---	note: an expandable SEQUENCE simplifies later addition of a numeric response time.
-
-ResponseTimeCategory ::= ENUMERATED {
-	lowdelay  (0),
-	delaytolerant  (1),
-	... }
---	exception handling:
---	an unrecognized value shall be treated the same as value 1 (delaytolerant)
-
-SupportedGADShapes ::= BIT STRING {
-	ellipsoidPoint  (0),
-	ellipsoidPointWithUncertaintyCircle (1),
-	ellipsoidPointWithUncertaintyEllipse (2),
-	polygon (3),
-	ellipsoidPointWithAltitude (4),
-	ellipsoidPointWithAltitudeAndUncertaintyElipsoid (5),
-	ellipsoidArc  (6) } (SIZE (7..16))
--- A node shall mark in the BIT STRING all Shapes defined in 3GPP TS 23.032 it supports.
--- exception handling: bits 7 to 15 shall be ignored if received.
-
-LCS-ReferenceNumber::= OCTET STRING (SIZE(1))
-
-LCSCodeword ::= SEQUENCE {
-	dataCodingScheme	[0] USSD-DataCodingScheme,
-	lcsCodewordString	[1] LCSCodewordString,
-	...}
-
-LCSCodewordString ::= USSD-String (SIZE (1..maxLCSCodewordStringLength))
-
-maxLCSCodewordStringLength  INTEGER ::= 20
-
-LCS-PrivacyCheck ::= SEQUENCE {
-	callSessionUnrelated	[0] PrivacyCheckRelatedAction,
-	callSessionRelated	[1] PrivacyCheckRelatedAction	OPTIONAL,
-	...}
-
-PrivacyCheckRelatedAction ::= ENUMERATED {
-	allowedWithoutNotification (0),
-	allowedWithNotification (1),
-	allowedIfNoResponse (2),
-	restrictedIfNoResponse (3),
-	notAllowed (4),
-	...}
---	exception handling:
---	a ProvideSubscriberLocation-Arg containing an unrecognized PrivacyCheckRelatedAction
---	shall be rejected by the receiver with a return error cause of unexpected data value
-
-AreaEventInfo ::= SEQUENCE {
-	areaDefinition	[0]	AreaDefinition,
-	occurrenceInfo	[1]	OccurrenceInfo	OPTIONAL,
-	intervalTime	[2]	IntervalTime	OPTIONAL,
-	...}
-
-AreaDefinition ::= SEQUENCE {
-	areaList		[0]	AreaList,
-	...}
-
-AreaList ::= SEQUENCE SIZE (1..maxNumOfAreas) OF Area
-
-maxNumOfAreas  INTEGER ::= 10
-
-Area ::= SEQUENCE {
-	areaType		[0]	AreaType,
-	areaIdentification	[1]	AreaIdentification,
-	...}
-
-AreaType ::= ENUMERATED {
-	countryCode	(0),
-	plmnId		(1),
-	locationAreaId	(2),
-	routingAreaId	(3),
-	cellGlobalId	(4),
-	...,
-	utranCellId	(5) }
-
-AreaIdentification ::= OCTET STRING (SIZE (2..7))
-	-- The internal structure is defined as follows:
-	-- octet 1 bits 4321	Mobile Country Code 1st digit
-	--         bits 8765	Mobile Country Code 2nd digit
-	-- octet 2 bits 4321	Mobile Country Code 3rd digit
-	--         bits 8765	Mobile Network Code 3rd digit if 3 digit MNC included
-	--			or filler (1111)
-	-- octet 3 bits 4321	Mobile Network Code 1st digit
-	--         bits 8765	Mobile Network Code 2nd digit
-	-- octets 4 and 5	Location Area Code (LAC) for Local Area Id,
-	--			Routing Area Id and Cell Global Id
-	-- octet 6	Routing Area Code (RAC) for Routing Area Id
-	-- octets 6 and 7	Cell Identity (CI) for Cell Global Id
-	-- octets 4 until 7	Utran Cell Identity (UC-Id) for Utran Cell Id
-
-OccurrenceInfo ::= ENUMERATED {
-	oneTimeEvent	(0),
-	multipleTimeEvent	(1),
-	...}
-
-IntervalTime ::= INTEGER (1..32767)
-	-- minimum interval time between area reports in seconds
-
-PeriodicLDRInfo ::= SEQUENCE {
-	reportingAmount		ReportingAmount,
-	reportingInterval	ReportingInterval,
-	...}
--- reportingInterval x reportingAmount shall not exceed 8639999 (99 days, 23 hours,
--- 59 minutes and 59 seconds) for compatibility with OMA MLP and RLP
-
-ReportingAmount ::= INTEGER (1..maxReportingAmount)
-
-maxReportingAmount INTEGER ::= 8639999
-
-ReportingInterval ::= INTEGER (1..maxReportingInterval)
--- ReportingInterval is in seconds
-
-maxReportingInterval INTEGER ::= 8639999
-
-ReportingPLMNList::= SEQUENCE {
-	plmn-ListPrioritized			[0] NULL					OPTIONAL,
-	plmn-List 						[1] PLMNList,
-	...}
-
-PLMNList::= SEQUENCE SIZE (1..maxNumOfReportingPLMN) OF
-				ReportingPLMN
-
-maxNumOfReportingPLMN INTEGER ::= 20
-
-ReportingPLMN::= SEQUENCE {
-	plmn-Id 						[0] PLMN-Id,
-	ran-Technology 					[1] RAN-Technology			OPTIONAL,
-	ran-PeriodicLocationSupport		[2] NULL					OPTIONAL,
-	...}
-
-RAN-Technology ::= ENUMERATED {
-	gsm			(0),
-	umts		(1),
-	...}
-
-ProvideSubscriberLocation-Res ::= SEQUENCE {
-	locationEstimate	Ext-GeographicalInformation,
-	ageOfLocationEstimate	[0] AgeOfLocationInformation	OPTIONAL,
-	extensionContainer	[1] ExtensionContainer	OPTIONAL,
-	... ,
-	add-LocationEstimate	[2] Add-GeographicalInformation 	OPTIONAL,
-	deferredmt-lrResponseIndicator	[3] NULL		OPTIONAL,
-	geranPositioningData	[4] PositioningDataInformation	OPTIONAL,
-	utranPositioningData	[5] UtranPositioningDataInfo	OPTIONAL,
-	cellIdOrSai	[6] CellGlobalIdOrServiceAreaIdOrLAI	OPTIONAL,
-	sai-Present	[7] NULL		OPTIONAL,
-	accuracyFulfilmentIndicator	[8] AccuracyFulfilmentIndicator		OPTIONAL,
-	velocityEstimate	[9] VelocityEstimate	OPTIONAL,
-	mo-lrShortCircuitIndicator	[10] NULL		OPTIONAL }
-
---	if deferredmt-lrResponseIndicator is set, locationEstimate is ignored.
-
--- the add-LocationEstimate parameter shall not be sent to a node that did not indicate the
--- geographic shapes supported in the ProvideSubscriberLocation-Arg
--- The locationEstimate and the add-locationEstimate parameters shall not be sent if
--- the supportedGADShapes parameter has been received in ProvideSubscriberLocation-Arg
--- and the shape encoded in locationEstimate or add-LocationEstimate is not marked
--- as supported in supportedGADShapes. In such a case ProvideSubscriberLocation
--- shall be rejected with error FacilityNotSupported with additional indication
--- shapeOfLocationEstimateNotSupported.
--- sai-Present indicates that the cellIdOrSai parameter contains a Service Area Identity.
-
-AccuracyFulfilmentIndicator ::= ENUMERATED {
-	requestedAccuracyFulfilled  (0),
-	requestedAccuracyNotFulfilled  (1),
-	...	}
-
-Ext-GeographicalInformation ::= OCTET STRING (SIZE (1..maxExt-GeographicalInformation))
-	-- Refers to geographical Information defined in 3GPP TS 23.032.
-	-- This is composed of 1 or more octets with an internal structure according to
-	-- 3GPP TS 23.032
-	-- Octet 1: Type of shape, only the following shapes in 3GPP TS 23.032 are allowed:
-	--		(a) Ellipsoid point with uncertainty circle
-	--		(b) Ellipsoid point with uncertainty ellipse
-	--		(c) Ellipsoid point with altitude and uncertainty ellipsoid
-	--		(d) Ellipsoid Arc
-	--		(e) Ellipsoid Point
-	-- Any other value in octet 1 shall be treated as invalid
-	-- Octets 2 to 8 for case (a) – Ellipsoid point with uncertainty circle
-	--		Degrees of Latitude				3 octets
-	--		Degrees of Longitude				3 octets
-	--		Uncertainty code				1 octet
-	-- Octets 2 to 11 for case (b) – Ellipsoid point with uncertainty ellipse:
-	--		Degrees of Latitude				3 octets
-	--		Degrees of Longitude				3 octets
-	--		Uncertainty semi-major axis				1 octet
-	--		Uncertainty semi-minor axis				1 octet
-	--		Angle of major axis				1 octet
-	--		Confidence				1 octet
-	-- Octets 2 to 14 for case (c) – Ellipsoid point with altitude and uncertainty ellipsoid
-	--		Degrees of Latitude				3 octets
-	--		Degrees of Longitude				3 octets
-	--		Altitude				2 octets
-	--		Uncertainty semi-major axis				1 octet
-	--		Uncertainty semi-minor axis				1 octet
-	--		Angle of major axis				1 octet
-	--		Uncertainty altitude				1 octet
-	--		Confidence				1 octet
-	-- Octets 2 to 13 for case (d) – Ellipsoid Arc
-	--		Degrees of Latitude				3 octets
-	--		Degrees of Longitude				3 octets
-	--		Inner radius				2 octets
-	--		Uncertainty radius				1 octet
-	--		Offset angle				1 octet
-	--		Included angle				1 octet
-	--		Confidence				1 octet
-	-- Octets 2 to 7 for case (e) – Ellipsoid Point
-	--		Degrees of Latitude				3 octets
-	--		Degrees of Longitude				3 octets
-
-	--
-	-- An Ext-GeographicalInformation parameter comprising more than one octet and
-	-- containing any other shape or an incorrect number of octets or coding according
-	-- to 3GPP TS 23.032 shall be treated as invalid data by a receiver.
-	--
-	-- An Ext-GeographicalInformation parameter comprising one octet shall be discarded
-	-- by the receiver if an Add-GeographicalInformation parameter is received 
-	-- in the same message.
-	--
-	-- An Ext-GeographicalInformation parameter comprising one octet shall be treated as
-	-- invalid data by the receiver if an Add-GeographicalInformation parameter is not
-	-- received in the same message.
-
-maxExt-GeographicalInformation  INTEGER ::= 20
-	-- the maximum length allows for further shapes in 3GPP TS 23.032 to be included in later 
-	-- versions of 3GPP TS 29.002
-
-VelocityEstimate ::= OCTET STRING (SIZE (4..7))
-	-- Refers to Velocity description defined in 3GPP TS 23.032.
-	-- This is composed of 4 or more octets with an internal structure according to
-	-- 3GPP TS 23.032
-	-- Octet 1: Type of velocity, only the following types in 3GPP TS 23.032 are allowed:
-	--		(a) Horizontal Velocity
-	--		(b) Horizontal with Vertical Velocity
-	--		(c) Horizontal Velocity with Uncertainty
-	--		(d) Horizontal with Vertical Velocity and Uncertainty
-	-- For types Horizontal with Vertical Velocity and Horizontal with Vertical Velocity
-	-- and Uncertainty, the direction of the Vertical Speed is also included in Octet 1
-	-- Any other value in octet 1 shall be treated as invalid
-	-- Octets 2 to 4 for case (a) Horizontal velocity:
-	--		Bearing				1 octet
-	--		Horizontal Speed				2 octets
-	-- Octets 2 to 5 for case (b) – Horizontal with Vertical Velocity:
-	--		Bearing				1 octet
-	--		Horizontal Speed				2 octets
-	--		Vertical Speed				1 octet
-	-- Octets 2 to 5 for case (c) – Horizontal velocity with Uncertainty:
-	--		Bearing				1 octet
-	--		Horizontal Speed				2 octets
-	--		Uncertainty Speed				1 octet
-	-- Octets 2 to 7 for case (d) – Horizontal with Vertical Velocity and Uncertainty:
-	--		Bearing				1 octet
-	--		Horizontal Speed				2 octets
-	--		Vertical Speed				1 octet
-	--		Horizontal Uncertainty Speed			1 octet
-	--		Vertical Uncertainty Speed				1 octet
-
-PositioningDataInformation ::= OCTET STRING (SIZE (2..maxPositioningDataInformation))
-	-- Refers to the Positioning Data defined in 3GPP TS 49.031.
-	-- This is composed of 2 or more octets with an internal structure according to
-	-- 3GPP TS 49.031. 
-
-maxPositioningDataInformation INTEGER ::= 10
-	-- 
-
-UtranPositioningDataInfo ::= OCTET STRING (SIZE (3..maxUtranPositioningDataInfo))
-	-- Refers to the Position Data defined in 3GPP TS 25.413.
-	-- This is composed of the positioningDataDiscriminator and the positioningDataSet
-	-- included in positionData as defined in 3GPP TS 25.413.
-
-maxUtranPositioningDataInfo INTEGER ::= 11
-	-- 
-
-Add-GeographicalInformation ::= OCTET STRING (SIZE (1..maxAdd-GeographicalInformation))
-	-- Refers to geographical Information defined in 3GPP TS 23.032.
-	-- This is composed of 1 or more octets with an internal structure according to 
-	-- 3GPP TS 23.032
-	-- Octet 1: Type of shape, all the shapes defined in 3GPP TS 23.032 are allowed:
-	-- Octets 2 to n (where n is the total number of octets necessary to encode the shape
-	-- according to 3GPP TS 23.032) are used to encode the shape itself in accordance with the
-	-- encoding defined in 3GPP TS 23.032
-	--
-	-- An Add-GeographicalInformation parameter, whether valid or invalid, received 
-	-- together with a valid Ext-GeographicalInformation parameter in the same message 
-	-- shall be discarded.
-	--
-	-- An Add-GeographicalInformation parameter containing any shape not defined in 
-	-- 3GPP TS 23.032 or an incorrect number of octets or coding according to 
-	-- 3GPP TS 23.032 shall be treated as invalid data by a receiver if not received 
-	-- together with a valid Ext-GeographicalInformation parameter in the same message.
-
-maxAdd-GeographicalInformation  INTEGER ::= 91
-	-- the maximum length allows support for all the shapes currently defined in 3GPP TS 23.032
-
-SubscriberLocationReport-Arg ::= SEQUENCE {
-	lcs-Event		LCS-Event,
-	lcs-ClientID	LCS-ClientID, 
-	lcsLocationInfo	LCSLocationInfo,
-	msisdn		[0] ISDN-AddressString	OPTIONAL,
-	imsi			[1] IMSI		OPTIONAL,
-	imei			[2] IMEI		OPTIONAL,
-	na-ESRD		[3] ISDN-AddressString	OPTIONAL,
-	na-ESRK		[4] ISDN-AddressString	OPTIONAL,
-	locationEstimate	[5] Ext-GeographicalInformation	OPTIONAL,
-	ageOfLocationEstimate	[6] AgeOfLocationInformation	OPTIONAL,
-	slr-ArgExtensionContainer	[7] SLR-ArgExtensionContainer	OPTIONAL,
-	... ,
-	add-LocationEstimate	[8] Add-GeographicalInformation	OPTIONAL,
-	deferredmt-lrData	[9] Deferredmt-lrData	OPTIONAL, 
-	lcs-ReferenceNumber	[10] LCS-ReferenceNumber	OPTIONAL,
-	geranPositioningData	[11] PositioningDataInformation	OPTIONAL,
-	utranPositioningData	[12] UtranPositioningDataInfo	OPTIONAL,
-	cellIdOrSai	[13]	CellGlobalIdOrServiceAreaIdOrLAI	OPTIONAL,
-	h-gmlc-Address	[14]	GSN-Address	OPTIONAL,
-	lcsServiceTypeID	[15]	LCSServiceTypeID	OPTIONAL,
-	sai-Present	[17] NULL		OPTIONAL,
-	pseudonymIndicator	[18] NULL		OPTIONAL,
-	accuracyFulfilmentIndicator	[19] AccuracyFulfilmentIndicator	OPTIONAL,
-	velocityEstimate	[20] VelocityEstimate	OPTIONAL,
-	sequenceNumber	[21] SequenceNumber	OPTIONAL,
-	periodicLDRInfo	[22] PeriodicLDRInfo	OPTIONAL,
-	mo-lrShortCircuitIndicator	[23] NULL		OPTIONAL }
-
-	-- one of msisdn or imsi is mandatory
-	-- a location estimate that is valid for the locationEstimate parameter should 
-	-- be transferred in this parameter in preference to the add-LocationEstimate.
-	-- the deferredmt-lrData parameter shall be included if and only if the lcs-Event
-	-- indicates a deferredmt-lrResponse.
-	-- if the lcs-Event indicates a deferredmt-lrResponse then the locationEstimate 
-	-- and the add-locationEstimate parameters shall not be sent if the 
-	-- supportedGADShapes parameter had been received in ProvideSubscriberLocation-Arg
-	-- and the shape encoded in locationEstimate or add-LocationEstimate was not marked
-	-- as supported in supportedGADShapes. In such a case terminationCause 
-	-- in deferredmt-lrData shall be present with value 
-	-- shapeOfLocationEstimateNotSupported. 
-	-- If a lcs event indicates deferred mt-lr response, the lcs-Reference number shall be 
-	-- included. 
-	-- sai-Present indicates that the cellIdOrSai parameter contains a Service Area Identity.
-
-Deferredmt-lrData ::= SEQUENCE {
-	deferredLocationEventType	DeferredLocationEventType,
-	terminationCause	[0] TerminationCause	OPTIONAL,
-	lcsLocationInfo	[1] LCSLocationInfo	OPTIONAL,
-	...}
-	-- lcsLocationInfo may be included only if a terminationCause is present 
-	-- indicating mt-lrRestart.
-
-LCS-Event ::= ENUMERATED {
-	emergencyCallOrigination  (0),
-	emergencyCallRelease  (1), 
-	mo-lr  (2),
-	...,
-	deferredmt-lrResponse  (3) ,
-	deferredmo-lrTTTPInitiation  (4)  }
-	--	deferredmt-lrResponse is applicable to the delivery of a location estimate 
-	--	for an LDR initiated earlier by either the network (via an MT-LR activate deferred 
-	--	location) or the UE (via a deferred MO-LR TTTP initiation)
-	--	exception handling:
-	--	a SubscriberLocationReport-Arg containing an unrecognized LCS-Event
-	--	shall be rejected by a receiver with a return error cause of unexpected data value
-
-TerminationCause ::= ENUMERATED {
-	normal  (0),
-	errorundefined  (1),
-	internalTimeout  (2),
-	congestion  (3),
-	mt-lrRestart  (4),
-	privacyViolation  (5),
-	...,
-	shapeOfLocationEstimateNotSupported (6) ,
-	subscriberTermination (7),
-	uETermination (8),
-	networkTermination (9)  } 
--- mt-lrRestart shall be used to trigger the GMLC to restart the location procedure, 
--- either because the sending node knows that the terminal has moved under coverage 
--- of another MSC or SGSN (e.g. Send Identification received), or because the subscriber
--- has been deregistered due to a Cancel Location received from HLR.
---
--- exception handling
--- an unrecognized value shall be treated the same as value 1 (errorundefined) 
-
-SequenceNumber ::= INTEGER (1..maxReportingAmount)
-
-SubscriberLocationReport-Res ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL, 
-	..., 
-	na-ESRK		[0] ISDN-AddressString	OPTIONAL,
-	na-ESRD		[1] ISDN-AddressString	OPTIONAL,
-	h-gmlc-Address	[2]	GSN-Address	OPTIONAL,
-	mo-lrShortCircuitIndicator	[3] NULL		OPTIONAL,
-	reportingPLMNList	[4] ReportingPLMNList	OPTIONAL,
-	lcs-ReferenceNumber	[5]	LCS-ReferenceNumber	OPTIONAL }
-
--- na-ESRK and na-ESRD are mutually exclusive
---
--- exception handling
--- receipt of both na-ESRK and na-ESRD shall be treated the same as a return error
-
-
-END
-
diff --git a/rrlp-ephemeris/asn1/MAP-MS-DataTypes.asn b/rrlp-ephemeris/asn1/MAP-MS-DataTypes.asn
deleted file mode 100644
index 9c12a02..0000000
--- a/rrlp-ephemeris/asn1/MAP-MS-DataTypes.asn
+++ /dev/null
@@ -1,2780 +0,0 @@
--- $Id: MAP-MS-DataTypes.asn 28149 2009-04-25 17:45:34Z etxrab $
--- 3GPP TS 29.002 V8.9.0 (2009-04) 
--- 17.7.1	Mobile Service data types
-
-MAP-MS-DataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-MS-DataTypes (11) version11 (11)}
-
-DEFINITIONS
-
-IMPLICIT TAGS
-
-::=
-
-BEGIN
-
-EXPORTS
-
-	-- location registration types
-	UpdateLocationArg,
-	UpdateLocationRes,
-	CancelLocationArg,
-	CancelLocationRes, 
-	PurgeMS-Arg, 
-	PurgeMS-Res,
-	SendIdentificationArg,
-	SendIdentificationRes, 
-	UpdateGprsLocationArg,
-	UpdateGprsLocationRes,
-	IST-SupportIndicator, 
-	SupportedLCS-CapabilitySets,
-
-	-- gprs location registration types
-	GSN-Address,
-
-	-- handover types
-	ForwardAccessSignalling-Arg,
-	PrepareHO-Arg,
-	PrepareHO-Res,
-	PrepareSubsequentHO-Arg, 
-	PrepareSubsequentHO-Res,
-	ProcessAccessSignalling-Arg,
-	SendEndSignal-Arg,
-	SendEndSignal-Res,
-
-	-- authentication management types
-	SendAuthenticationInfoArg,
-	SendAuthenticationInfoRes, 
-	AuthenticationFailureReportArg,
-AuthenticationFailureReportRes,
-
-	-- security management types
-	Kc, 
-	Cksn,
-
-	-- equipment management types
-	CheckIMEI-Arg,
-	CheckIMEI-Res,
-
-	-- subscriber management types
-	InsertSubscriberDataArg,
-	InsertSubscriberDataRes, 
-	LSAIdentity,
-	DeleteSubscriberDataArg,
-	DeleteSubscriberDataRes,
-	Ext-QoS-Subscribed,
-	Ext2-QoS-Subscribed, 
-	Ext3-QoS-Subscribed,
-	SubscriberData,
-	ODB-Data,
-	SubscriberStatus,
-	ZoneCodeList,
-	maxNumOfZoneCodes, 
-	O-CSI, 
-D-CSI,
-	O-BcsmCamelTDPCriteriaList, 
-	T-BCSM-CAMEL-TDP-CriteriaList,
-	SS-CSI,
-	ServiceKey,
-	DefaultCallHandling,
-	CamelCapabilityHandling,
-	BasicServiceCriteria,
-	SupportedCamelPhases,
-	OfferedCamel4CSIs,
-	OfferedCamel4Functionalities,
-	maxNumOfCamelTDPData,
-	CUG-Index, 
-	CUG-Info,
-	CUG-Interlock,
-	InterCUG-Restrictions,
-	IntraCUG-Options,
-	NotificationToMSUser, 
-	QoS-Subscribed,
-IST-AlertTimerValue,
-	T-CSI,
-	T-BcsmTriggerDetectionPoint,
-APN,
-AdditionalInfo,
-
-	-- fault recovery types
-	ResetArg,
-	RestoreDataArg,
-	RestoreDataRes,
-
--- provide subscriber info types 
-GeographicalInformation, 
-MS-Classmark2,
-GPRSMSClass,
-
-	-- subscriber information enquiry types
-	ProvideSubscriberInfoArg,
-	ProvideSubscriberInfoRes,
-	SubscriberInfo,
-	LocationInformation,
-	LocationInformationGPRS,
-	RAIdentity,
-	SubscriberState,
-	GPRSChargingID, 
-MNPInfoRes,
-	RouteingNumber,
-
-	-- any time information enquiry types
-	AnyTimeInterrogationArg,
-	AnyTimeInterrogationRes,
-
-	-- any time information handling types
-	AnyTimeSubscriptionInterrogationArg,
-	AnyTimeSubscriptionInterrogationRes,
-	AnyTimeModificationArg,
-	AnyTimeModificationRes,
-
-	-- subscriber data modification notification types
-	NoteSubscriberDataModifiedArg,
-	NoteSubscriberDataModifiedRes,
-
-	-- gprs location information retrieval types
-	SendRoutingInfoForGprsArg,
-	SendRoutingInfoForGprsRes,
-
-	-- failure reporting types
-	FailureReportArg,
-	FailureReportRes,
-
-	-- gprs notification types
-	NoteMsPresentForGprsArg,
-	NoteMsPresentForGprsRes,
-
-	-- Mobility Management types
-NoteMM-EventArg,
-	NoteMM-EventRes,
-	NumberPortabilityStatus,
-	PagingArea,
-
-	-- VGCS / VBS types types
-GroupId, 
-Long-GroupId,
-AdditionalSubscriptions
-
-;
-
-IMPORTS
-	maxNumOfSS,
-	SS-SubscriptionOption,
-	SS-List,
-	SS-ForBS-Code,
-	Password
-FROM MAP-SS-DataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-SS-DataTypes (14) version11 (11)}
-
-	SS-Code
-FROM MAP-SS-Code {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-SS-Code (15) version11 (11)}
-
-	Ext-BearerServiceCode
-FROM MAP-BS-Code {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-BS-Code (20) version11 (11)}
-
-	Ext-TeleserviceCode
-FROM MAP-TS-Code {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-TS-Code (19) version11 (11)}
-
-	AddressString,
-ISDN-AddressString, 
-	ISDN-SubaddressString, 
-	FTN-AddressString,
-	AccessNetworkSignalInfo,
-	IMSI, 
-	IMEI,
-	TMSI,
-	HLR-List,
-	LMSI,
-	Identity,
-	GlobalCellId,
-	CellGlobalIdOrServiceAreaIdOrLAI,
-	Ext-BasicServiceCode,
-	NAEA-PreferredCI,
-	EMLPP-Info, 
-	MC-SS-Info,
-	SubscriberIdentity,
-	AgeOfLocationInformation,
-	LCSClientExternalID,
-	LCSClientInternalID,
-	Ext-SS-Status,
-	LCSServiceTypeID,
-	ASCI-CallReference,
-	TBCD-STRING,
-	LAIFixedLength,
-	PLMN-Id,
-EMLPP-Priority
-FROM MAP-CommonDataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-CommonDataTypes (18) version11 (11)}
-
-	ExtensionContainer
-FROM MAP-ExtensionDataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-ExtensionDataTypes (21) version11 (11)}
-
-	AbsentSubscriberDiagnosticSM
-FROM MAP-ER-DataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-ER-DataTypes (17) version11 (11)}
-
-	TracePropagationList
-FROM MAP-OM-DataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-OM-DataTypes (12) version11 (11)}
-
-;
-
--- location registration types
-
-UpdateLocationArg ::= SEQUENCE {
-	imsi			IMSI,
-	msc-Number	[1] ISDN-AddressString,
-	vlr-Number	ISDN-AddressString,
-	lmsi			[10] LMSI		OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	... ,
-	vlr-Capability	[6] VLR-Capability	OPTIONAL,
-	informPreviousNetworkEntity	[11]	NULL		OPTIONAL,
-	cs-LCS-NotSupportedByUE	[12]	NULL		OPTIONAL,
-	v-gmlc-Address	[2]	GSN-Address	OPTIONAL,
-	add-info		[13] ADD-Info	OPTIONAL,
-	pagingArea	[14] PagingArea	OPTIONAL,
-	skipSubscriberDataUpdate	[15] NULL		OPTIONAL 
-	-- The skipSubscriberDataUpdate parameter in the UpdateLocationArg and the ADD-Info
-	-- structures carry the same semantic.
-	 }
-
-VLR-Capability ::= SEQUENCE{
-	supportedCamelPhases  	[0] SupportedCamelPhases	OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	... ,
-	solsaSupportIndicator	[2] NULL		OPTIONAL,
-	istSupportIndicator	[1] IST-SupportIndicator	OPTIONAL,
-	superChargerSupportedInServingNetworkEntity	[3] SuperChargerInfo	OPTIONAL,
-	longFTN-Supported	[4]	NULL		OPTIONAL,
-	supportedLCS-CapabilitySets	[5]	SupportedLCS-CapabilitySets	OPTIONAL,
-	offeredCamel4CSIs	[6] OfferedCamel4CSIs	OPTIONAL,
-	supportedRAT-TypesIndicator	[7]	SupportedRAT-Types	OPTIONAL,
-	longGroupID-Supported	[8]	NULL		OPTIONAL }
-
-SupportedRAT-Types::= BIT STRING {
-	utran  (0),
-	geran  (1),
-	gan    (2),
-	i-hspa-evolution (3),
-	e-utran	(4)} (SIZE (2..8))
-	-- exception handling: bits 5 to 7 shall be ignored if received and not understood
-	 
-
-
-SuperChargerInfo ::= CHOICE {
-	sendSubscriberData	[0] NULL,
-	subscriberDataStored	[1] AgeIndicator }
-
-AgeIndicator ::= OCTET STRING (SIZE (1..6))
-	-- The internal structure of this parameter is implementation specific.
-
-IST-SupportIndicator ::=  ENUMERATED {
-	basicISTSupported	(0),
-	istCommandSupported	(1),
-	...}
--- exception handling:
--- reception of values > 1 shall be mapped to ' istCommandSupported '
-
-SupportedLCS-CapabilitySets ::= BIT STRING {
-	lcsCapabilitySet1 (0),
-	lcsCapabilitySet2 (1),
-	lcsCapabilitySet3 (2),
-	lcsCapabilitySet4 (3) ,
-	lcsCapabilitySet5 (4) } (SIZE (2..16)) 
--- Core network signalling capability set1 indicates LCS Release98 or Release99 version.
--- Core network signalling capability set2 indicates LCS Release4.
--- Core network signalling capability set3 indicates LCS Release5.
--- Core network signalling capability set4 indicates LCS Release6.
--- Core network signalling capability set5 indicates LCS Release7 or later version.
--- A node shall mark in the BIT STRING all LCS capability sets it supports. 
--- If no bit is set then the sending node does not support LCS.
--- If the parameter is not sent by an VLR then the VLR may support at most capability set1.
--- If the parameter is not sent by an SGSN then no support for LCS is assumed.
--- An SGSN is not allowed to indicate support of capability set1.
--- Other bits than listed above shall be discarded.
-
-UpdateLocationRes ::= SEQUENCE {
-	hlr-Number	ISDN-AddressString,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...,
-	add-Capability	NULL			OPTIONAL,
-	pagingArea-Capability	[0]NULL			OPTIONAL }
-
-ADD-Info ::= SEQUENCE {
-	imeisv		[0] IMEI,
-	skipSubscriberDataUpdate	[1] NULL		OPTIONAL,
-	-- The skipSubscriberDataUpdate parameter in the UpdateLocationArg and the ADD-Info
-	-- structures carry the same semantic.
-	...}
-
-
-PagingArea ::= SEQUENCE SIZE (1..5) OF LocationArea 
-
-
-LocationArea ::= CHOICE {
-	laiFixedLength	[0] LAIFixedLength,
-	lac			[1] LAC}
-
-
-LAC ::= OCTET STRING (SIZE (2))
-	-- Refers to Location Area Code of the Location Area Identification defined in 
-     -- 3GPP TS 23.003 [17].
-	-- Location Area Code according to 3GPP TS 24.008 [35]
-
-CancelLocationArg ::= [3] SEQUENCE {
-	identity		Identity,
-	cancellationType	CancellationType	OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...,
-	typeOfUpdate	[0] TypeOfUpdate	OPTIONAL }
-
-TypeOfUpdate ::= ENUMERATED {
-	sgsn-change (0),
-	mme-change (1),
-	...}
-	-- TypeOfUpdate shall be absent if CancellationType is different from updateProcedure
-
-CancellationType ::= ENUMERATED {
-	updateProcedure	(0),
-	subscriptionWithdraw	(1),
-	...}
-	-- The HLR shall not send values other than listed above
-
-CancelLocationRes ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-PurgeMS-Arg ::= [3] SEQUENCE {
-	imsi			IMSI,
-	vlr-Number	[0] ISDN-AddressString	OPTIONAL,
-	sgsn-Number	[1]	ISDN-AddressString	OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-PurgeMS-Res ::= SEQUENCE {
-	freezeTMSI	[0]	NULL		OPTIONAL,
-	freezeP-TMSI	[1]	NULL		OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...,
-	freezeM-TMSI	[2]	NULL		OPTIONAL }
-
-SendIdentificationArg ::= SEQUENCE {
-	tmsi			TMSI,
-	numberOfRequestedVectors	NumberOfRequestedVectors 	OPTIONAL,
-	-- within a dialogue numberOfRequestedVectors shall be present in 
-	-- the first service request and shall not be present in subsequent service requests. 
-	-- If received in a subsequent service request it shall be discarded. 
-	segmentationProhibited	NULL			OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...,
-	msc-Number	ISDN-AddressString 	OPTIONAL,
-	previous-LAI	[0] LAIFixedLength	OPTIONAL,
-	hopCounter	[1] HopCounter	OPTIONAL }
-
-HopCounter ::= INTEGER (0..3)
-
-SendIdentificationRes ::= [3] SEQUENCE {
-	imsi			IMSI			OPTIONAL,
-	-- IMSI shall be present in the first (or only) service response of a dialogue.
-	-- If multiple service requests are present in a dialogue then IMSI
-	-- shall not be present in any service response other than the first one.
-	authenticationSetList	AuthenticationSetList	OPTIONAL,
-	currentSecurityContext	[2]CurrentSecurityContext	OPTIONAL,
-	extensionContainer	[3] ExtensionContainer	OPTIONAL,
-	...}
-
--- authentication management types
-
-AuthenticationSetList ::= CHOICE {
-	tripletList	[0] TripletList,
-	quintupletList	[1] QuintupletList }
-
-TripletList ::= SEQUENCE SIZE (1..5) OF
-				AuthenticationTriplet
-
-QuintupletList ::= SEQUENCE SIZE (1..5) OF
-				AuthenticationQuintuplet
-
-AuthenticationTriplet ::= SEQUENCE {
-	rand			RAND,
-	sres			SRES,
-	kc			Kc,
-	...}
-
-AuthenticationQuintuplet ::= SEQUENCE {
-	rand			RAND,
-	xres			XRES,
-	ck			CK,
-	ik			IK,
-	autn			AUTN,
-	...}
-
-CurrentSecurityContext ::= CHOICE {
-	gsm-SecurityContextData	[0] GSM-SecurityContextData,
-	umts-SecurityContextData	[1] UMTS-SecurityContextData }
-
-GSM-SecurityContextData ::= SEQUENCE {
-	kc			Kc,
-	cksn			Cksn,
-	... }
-
-UMTS-SecurityContextData ::= SEQUENCE {
-	ck			CK,
-	ik			IK,
-	ksi			KSI,
-	... }
-
-RAND ::= OCTET STRING (SIZE (16))
-
-SRES ::= OCTET STRING (SIZE (4))
-
-Kc ::= OCTET STRING (SIZE (8))
-
-XRES ::= OCTET STRING (SIZE (4..16))
-
-CK ::= OCTET STRING (SIZE (16))
-
-IK ::= OCTET STRING (SIZE (16))
-
-AUTN ::= OCTET STRING (SIZE (16))
-
-AUTS ::= OCTET STRING (SIZE (14))
-
-Cksn ::= OCTET STRING (SIZE (1))
-	-- The internal structure is defined in 3GPP TS 24.008
-
-KSI ::= OCTET STRING (SIZE (1))
-	-- The internal structure is defined in 3GPP TS 24.008
-
-AuthenticationFailureReportArg ::= SEQUENCE {
-	imsi			IMSI,
-	failureCause	FailureCause,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	... ,
-	re-attempt	BOOLEAN		OPTIONAL,
-	accessType	AccessType	OPTIONAL,
-	rand			RAND			OPTIONAL,
-	vlr-Number	[0] ISDN-AddressString	OPTIONAL,
-	sgsn-Number	[1] ISDN-AddressString	OPTIONAL }
-
-AccessType ::= ENUMERATED {
-	call (0),
-	emergencyCall (1),
-	locationUpdating (2),
-	supplementaryService (3),
-	shortMessage (4),
-	gprsAttach (5),
-	routingAreaUpdating (6),
-	serviceRequest (7),
-	pdpContextActivation (8),
-	pdpContextDeactivation (9),
-	...,
-	gprsDetach (10)}
-	-- exception handling:
-	-- received values greater than 10 shall be ignored.
-
-AuthenticationFailureReportRes ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-FailureCause ::= ENUMERATED {
-	wrongUserResponse  (0),
-	wrongNetworkSignature  (1)}
-
--- gprs location registration types
-
-UpdateGprsLocationArg ::= SEQUENCE {
-	imsi			IMSI,
-	sgsn-Number	ISDN-AddressString,	
-	sgsn-Address	GSN-Address,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	... ,
-	sgsn-Capability	[0] SGSN-Capability	OPTIONAL,
-	informPreviousNetworkEntity	[1]	NULL		OPTIONAL,
-	ps-LCS-NotSupportedByUE	[2]	NULL		OPTIONAL,
-	v-gmlc-Address	[3]	GSN-Address	OPTIONAL,
-	add-info		[4]  ADD-Info	OPTIONAL,
-	eps-info		[5]	EPS-Info	OPTIONAL,
-	servingNodeTypeIndicator	[6]	NULL		OPTIONAL,
-	skipSubscriberDataUpdate	[7] NULL		OPTIONAL,
-	usedRAT-Type	[8] Used-RAT-Type	OPTIONAL 
-	 }
-
-Used-RAT-Type::= ENUMERATED {
-	utran  (0),
-	geran  (1),
-	gan    (2),
-	i-hspa-evolution (3),
-	e-utran	(4),
-	...}
-
-EPS-Info ::= CHOICE{
-	pdn-gw-update	[0] PDN-GW-Update,
-	isr-Information	[1] ISR-Information }
-
-PDN-GW-Update ::= SEQUENCE{
-	apn			[0] APN		OPTIONAL,
-	pdn-gw-Identity	[1] PDN-GW-Identity	OPTIONAL,
-	contextId		[2] ContextId                     OPTIONAL,
-	extensionContainer	[3] ExtensionContainer	OPTIONAL,
-	... }
-
-ISR-Information::= BIT STRING {
-	updateMME  (0),
-	cancelSGSN  (1)} (SIZE (2..8))
-	-- exception handling: reception of unknown bit assignments in the
-	-- ISR-Information data type shall be discarded by the receiver 
-
-SGSN-Capability ::= SEQUENCE{
-	solsaSupportIndicator	NULL			OPTIONAL,
-	extensionContainer	[1] ExtensionContainer	OPTIONAL,
-	... ,
-	superChargerSupportedInServingNetworkEntity	[2] SuperChargerInfo	OPTIONAL ,
-	gprsEnhancementsSupportIndicator 	[3] NULL		OPTIONAL,
-	supportedCamelPhases  	[4] SupportedCamelPhases	OPTIONAL,
-	supportedLCS-CapabilitySets	[5]  SupportedLCS-CapabilitySets	OPTIONAL,
-	offeredCamel4CSIs	[6] OfferedCamel4CSIs	OPTIONAL,
-	smsCallBarringSupportIndicator	[7]	NULL		OPTIONAL,	supportedRAT-TypesIndicator	[8]	SupportedRAT-Types	OPTIONAL,
-	supportedFeatures	[9] SupportedFeatures	OPTIONAL }
-
-SupportedFeatures::= BIT STRING {
-	odb-all (0),
-	odb-HPLMN-APN (1),
-	odb-VPLMN-APN (2),
-	regSub (3)} (SIZE (4..8))
-
-GSN-Address ::= OCTET STRING (SIZE (5..17))
-	-- Octets are coded according to TS 3GPP TS 23.003 [17]
-
-UpdateGprsLocationRes ::= SEQUENCE {
-	hlr-Number	ISDN-AddressString,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...,
-	add-Capability	NULL			OPTIONAL,
-	sgsn-mmeSeparationSupported	[0] NULL		OPTIONAL }
-
--- handover types
-
-ForwardAccessSignalling-Arg ::= [3] SEQUENCE {
-	an-APDU		AccessNetworkSignalInfo,
-	integrityProtectionInfo	[0] IntegrityProtectionInformation		OPTIONAL,
-	encryptionInfo	[1] EncryptionInformation		OPTIONAL,
-	keyStatus		[2]	KeyStatus	OPTIONAL,
-	allowedGSM-Algorithms	[4]	AllowedGSM-Algorithms	OPTIONAL,
-	allowedUMTS-Algorithms	[5]	AllowedUMTS-Algorithms	OPTIONAL,
-	radioResourceInformation	[6] RadioResourceInformation	OPTIONAL,
-	extensionContainer	[3]	ExtensionContainer 	OPTIONAL,
-	...,
-	radioResourceList	[7]	RadioResourceList	OPTIONAL,
-	bssmap-ServiceHandover	[9]	BSSMAP-ServiceHandover	OPTIONAL,
-	ranap-ServiceHandover	[8]	RANAP-ServiceHandover	OPTIONAL,
-	bssmap-ServiceHandoverList	[10]	BSSMAP-ServiceHandoverList	OPTIONAL,
-	currentlyUsedCodec	[11] Codec	OPTIONAL,
-	iuSupportedCodecsList	[12] SupportedCodecsList	OPTIONAL,
-	rab-ConfigurationIndicator	[13] NULL		OPTIONAL,
-	iuSelectedCodec	[14]	Codec	OPTIONAL,
-	alternativeChannelType	[15]	RadioResourceInformation	OPTIONAL,
-	tracePropagationList	[17]	TracePropagationList	OPTIONAL }
-
-AllowedGSM-Algorithms ::= OCTET STRING (SIZE (1))
-	-- internal structure is coded as Algorithm identifier octet from
-	-- Permitted Algorithms defined in 3GPP TS 48.008
-	-- A node shall mark all GSM algorithms that are allowed in MSC-B
-
-AllowedUMTS-Algorithms ::= SEQUENCE {
-	integrityProtectionAlgorithms	[0] 	PermittedIntegrityProtectionAlgorithms	OPTIONAL,
-	encryptionAlgorithms	[1] 	PermittedEncryptionAlgorithms		OPTIONAL,
-	extensionContainer	[2]	ExtensionContainer	OPTIONAL,
-	...}
-
-PermittedIntegrityProtectionAlgorithms ::=
-		OCTET STRING (SIZE (1..maxPermittedIntegrityProtectionAlgorithmsLength))
-	-- Octets contain a complete PermittedIntegrityProtectionAlgorithms data type 
-	-- as defined in 3GPP TS 25.413, encoded according to the encoding scheme 
-	-- mandated by 3GPP TS 25.413. 
-	-- Padding bits are included, if needed, in the least significant bits of the 
-	-- last octet of the octet string. 
-
-
-maxPermittedIntegrityProtectionAlgorithmsLength INTEGER ::= 9
-
-PermittedEncryptionAlgorithms ::=
-		OCTET STRING (SIZE (1..maxPermittedEncryptionAlgorithmsLength))
-	-- Octets contain a complete PermittedEncryptionAlgorithms data type 
-	-- as defined in 3GPP TS 25.413, encoded according to the encoding scheme 
-	-- mandated by 3GPP TS 25.413
-	-- Padding bits are included, if needed, in the least significant bits of the 
-	-- last octet of the octet string. 
-
-
-maxPermittedEncryptionAlgorithmsLength INTEGER ::= 9
-
-KeyStatus ::= ENUMERATED {
-	old  (0),
-	new  (1),
-	...}
-	-- exception handling:
-	-- received values in range 2-31 shall be treated as "old"
-	-- received values greater than 31 shall be treated as "new"
-
-PrepareHO-Arg ::= [3] SEQUENCE {
-	targetCellId	[0] GlobalCellId	OPTIONAL,
-	ho-NumberNotRequired	NULL			OPTIONAL, 
-	targetRNCId	[1] RNCId		OPTIONAL,
-	an-APDU		[2] AccessNetworkSignalInfo	OPTIONAL,
-	multipleBearerRequested	[3] NULL		OPTIONAL,
-	imsi			[4] IMSI		OPTIONAL,
-	integrityProtectionInfo	[5] IntegrityProtectionInformation		OPTIONAL,
-	encryptionInfo	[6] EncryptionInformation		OPTIONAL,
-	radioResourceInformation	[7] RadioResourceInformation	OPTIONAL,
-	allowedGSM-Algorithms	[9]	AllowedGSM-Algorithms	OPTIONAL,
-	allowedUMTS-Algorithms	[10]	AllowedUMTS-Algorithms	OPTIONAL,
-	radioResourceList	[11] RadioResourceList	OPTIONAL,
-	extensionContainer	[8] ExtensionContainer	OPTIONAL,
-	... ,
-	rab-Id		[12] RAB-Id	OPTIONAL,
-	bssmap-ServiceHandover	[13]	BSSMAP-ServiceHandover	OPTIONAL,
-	ranap-ServiceHandover	[14]	RANAP-ServiceHandover	OPTIONAL, 
-	bssmap-ServiceHandoverList	[15]	BSSMAP-ServiceHandoverList	OPTIONAL,
-	asciCallReference	[20]	ASCI-CallReference	OPTIONAL,
-	geran-classmark	[16] GERAN-Classmark	OPTIONAL,
-	iuCurrentlyUsedCodec	[17] Codec	OPTIONAL,
-	iuSupportedCodecsList	[18] SupportedCodecsList	OPTIONAL,
-	rab-ConfigurationIndicator	[19] NULL		OPTIONAL,
-	uesbi-Iu		[21]	UESBI-Iu	OPTIONAL,
-	imeisv		[22]	IMEI		OPTIONAL,
-	alternativeChannelType	[23]	RadioResourceInformation	OPTIONAL,
-	tracePropagationList	[25]	TracePropagationList	OPTIONAL	 }
-
-BSSMAP-ServiceHandoverList ::= SEQUENCE SIZE (1.. maxNumOfServiceHandovers) OF
-				BSSMAP-ServiceHandoverInfo
-
-BSSMAP-ServiceHandoverInfo ::= SEQUENCE {
-	bssmap-ServiceHandover	BSSMAP-ServiceHandover,
-	rab-Id		RAB-Id,
-	-- RAB Identity is needed to relate the service handovers with the radio access bearers. 
-	...}
-
-maxNumOfServiceHandovers  INTEGER ::= 7
-
-BSSMAP-ServiceHandover ::= OCTET STRING (SIZE (1))
-	-- Octets are coded according the Service Handover information element in
-	-- 3GPP TS 48.008.
-
-RANAP-ServiceHandover ::= OCTET STRING (SIZE (1))
-	-- Octet contains a complete Service-Handover data type 
-	-- as defined in 3GPP TS 25.413, encoded according to the encoding scheme 
-	-- mandated by 3GPP TS 25.413
-	-- Padding bits are included in the least significant bits. 
-
-
-RadioResourceList ::= SEQUENCE SIZE (1.. maxNumOfRadioResources) OF
-				RadioResource
-
-RadioResource ::= SEQUENCE {
-	radioResourceInformation	RadioResourceInformation,
-	rab-Id		RAB-Id,
-	-- RAB Identity is needed to relate the radio resources with the radio access bearers. 
-	...}
-
-maxNumOfRadioResources  INTEGER ::= 7
-
-PrepareHO-Res ::= [3] SEQUENCE {
-	handoverNumber	[0] ISDN-AddressString	OPTIONAL,
-	relocationNumberList	[1]	RelocationNumberList	OPTIONAL,
-	an-APDU		[2]	AccessNetworkSignalInfo	OPTIONAL,
-	multicallBearerInfo	[3]	MulticallBearerInfo	OPTIONAL,
-	multipleBearerNotSupported	NULL			OPTIONAL,
-	selectedUMTS-Algorithms	[5]	SelectedUMTS-Algorithms	OPTIONAL,
-	chosenRadioResourceInformation	[6] ChosenRadioResourceInformation	 OPTIONAL,
-	extensionContainer	[4]	ExtensionContainer	OPTIONAL,
-	...,
-	iuSelectedCodec	[7] Codec		OPTIONAL,
-	iuAvailableCodecsList	[8] CodecList	OPTIONAL }
-
-SelectedUMTS-Algorithms ::= SEQUENCE {
-	integrityProtectionAlgorithm	[0] 	ChosenIntegrityProtectionAlgorithm	OPTIONAL,
-	encryptionAlgorithm	[1] 	ChosenEncryptionAlgorithm	OPTIONAL,
-	extensionContainer	[2]	ExtensionContainer	OPTIONAL,
-	...}
-
-ChosenIntegrityProtectionAlgorithm ::= OCTET STRING (SIZE (1))
-	-- Octet contains a complete IntegrityProtectionAlgorithm data type 
-	-- as defined in 3GPP TS 25.413, encoded according to the encoding scheme 
-	-- mandated by 3GPP TS 25.413
-	-- Padding bits are included in the least significant bits. 
-
-ChosenEncryptionAlgorithm ::= OCTET STRING (SIZE (1))
-	-- Octet contains a complete EncryptionAlgorithm data type 
-	-- as defined in 3GPP TS 25.413, encoded according to the encoding scheme 
-	-- mandated by 3GPP TS 25.413
-	-- Padding bits are included in the least significant bits. 
-
-ChosenRadioResourceInformation ::= SEQUENCE {
-	chosenChannelInfo	[0] ChosenChannelInfo	OPTIONAL,
-	chosenSpeechVersion	[1] ChosenSpeechVersion	OPTIONAL,
-	...}
-
-ChosenChannelInfo ::= OCTET STRING (SIZE (1))
-	-- Octets are coded according the Chosen Channel information element in 3GPP TS 48.008
-
-ChosenSpeechVersion ::= OCTET STRING (SIZE (1))
-	-- Octets are coded according the Speech Version (chosen) information element in 3GPP TS
-	-- 48.008 
-
-PrepareSubsequentHO-Arg ::= [3] SEQUENCE {
-	targetCellId	[0] GlobalCellId	OPTIONAL,
-	targetMSC-Number	[1] ISDN-AddressString,
-	targetRNCId	[2] RNCId		OPTIONAL,
-	an-APDU		[3]	AccessNetworkSignalInfo	OPTIONAL,
-	selectedRab-Id	[4]	RAB-Id	OPTIONAL,
-	extensionContainer	[5]	ExtensionContainer	OPTIONAL,
-	...,
-	geran-classmark	[6] GERAN-Classmark	OPTIONAL,
-	rab-ConfigurationIndicator	[7] NULL		OPTIONAL }
-
-PrepareSubsequentHO-Res ::= [3] SEQUENCE {
-	an-APDU		AccessNetworkSignalInfo,
-	extensionContainer	[0]	ExtensionContainer	OPTIONAL,
-	...}
-
-ProcessAccessSignalling-Arg ::= [3] SEQUENCE {
-	an-APDU		AccessNetworkSignalInfo,
-	selectedUMTS-Algorithms	[1]	SelectedUMTS-Algorithms	OPTIONAL,
-	selectedGSM-Algorithm	[2]	SelectedGSM-Algorithm	OPTIONAL,
-	chosenRadioResourceInformation	[3] ChosenRadioResourceInformation OPTIONAL,
-	selectedRab-Id	[4] RAB-Id	OPTIONAL,
-	extensionContainer	[0]	ExtensionContainer 	OPTIONAL,
-	...,
-	iUSelectedCodec	[5] Codec		OPTIONAL,
-	iuAvailableCodecsList	[6] CodecList	OPTIONAL }
-
-SupportedCodecsList ::= SEQUENCE {
-	utranCodecList	[0] CodecList	OPTIONAL,
-	geranCodecList	[1] CodecList	OPTIONAL,
-	extensionContainer	[2] ExtensionContainer	OPTIONAL,
-	...}
-
-CodecList ::= SEQUENCE {
-	codec1		[1] Codec,
-	codec2		[2] Codec		OPTIONAL,
-	codec3		[3] Codec		OPTIONAL,
-	codec4		[4] Codec		OPTIONAL,
-	codec5		[5] Codec		OPTIONAL,
-	codec6		[6] Codec		OPTIONAL,
-	codec7		[7] Codec		OPTIONAL,
-	codec8		[8] Codec		OPTIONAL,
-	extensionContainer	[9] ExtensionContainer	OPTIONAL,
-	...}
-	-- Codecs are sent in priority order where codec1 has highest priority
-
-Codec ::= OCTET STRING (SIZE (1..4))
-
-	-- The internal structure is defined as follows:
-	-- octet 1	Coded as Codec Identification code in 3GPP TS 26.103
-	-- octets 2,3,4	Parameters for the Codec as defined in 3GPP TS
-	--			26.103, if available, length depending on the codec
-
-GERAN-Classmark ::= OCTET STRING (SIZE (2..87))
-	-- Octets are coded according the GERAN Classmark information element in 3GPP TS 48.008
-
-SelectedGSM-Algorithm ::= OCTET STRING (SIZE (1))
-	-- internal structure is coded as Algorithm identifier octet from Chosen Encryption
-	-- Algorithm defined in 3GPP TS 48.008
-	-- A node shall mark only the selected GSM algorithm
-
-SendEndSignal-Arg ::= [3] SEQUENCE {
-	an-APDU		AccessNetworkSignalInfo,
-	extensionContainer	[0]	ExtensionContainer 	OPTIONAL,
-	...}
-
-SendEndSignal-Res ::= SEQUENCE {
-	extensionContainer	[0]	ExtensionContainer 	OPTIONAL,
-	...}
-
-RNCId ::= OCTET STRING (SIZE (7))
-	-- The internal structure is defined as follows:
-	-- octet 1 bits 4321	Mobile Country Code 1st digit
-	--         bits 8765	Mobile Country Code 2nd digit
-	-- octet 2 bits 4321	Mobile Country Code 3rd digit
-	--         bits 8765	Mobile Network Code 3rd digit
-	--			or filler (1111) for 2 digit MNCs
-	-- octet 3 bits 4321	Mobile Network Code 1st digit
-	--         bits 8765	Mobile Network Code 2nd digit
-	-- octets 4 and 5	Location Area Code according to 3GPP TS 24.008
-	-- octets 6 and 7	RNC Id value according to 3GPP TS 25.413
-
-RelocationNumberList ::= SEQUENCE SIZE (1..maxNumOfRelocationNumber) OF
-				RelocationNumber
-
-MulticallBearerInfo ::= INTEGER (1..maxNumOfRelocationNumber)
-
-RelocationNumber ::= SEQUENCE {
-	handoverNumber	ISDN-AddressString,
-	rab-Id		RAB-Id,
-	-- RAB Identity is needed to relate the calls with the radio access bearers. 
-	...}
-
-RAB-Id ::= INTEGER (1..maxNrOfRABs)
-
-maxNrOfRABs INTEGER ::= 255
-
-maxNumOfRelocationNumber  INTEGER ::= 7
-
-RadioResourceInformation ::= OCTET STRING (SIZE (3..13))
-	-- Octets are coded according the Channel Type information element in 3GPP TS 48.008
-
-IntegrityProtectionInformation ::= OCTET STRING (SIZE (18..maxNumOfIntegrityInfo))
-	-- Octets contain a complete IntegrityProtectionInformation data type 
-	-- as defined in 3GPP TS 25.413, encoded according to the encoding scheme 
-	-- mandated by 3GPP TS 25.413
-	-- Padding bits are included, if needed, in the least significant bits of the 
-	-- last octet of the octet string. 
-
-maxNumOfIntegrityInfo INTEGER ::= 100
-
-EncryptionInformation ::= OCTET STRING (SIZE (18..maxNumOfEncryptionInfo))
-	-- Octets contain a complete EncryptionInformation data type 
-	-- as defined in 3GPP TS 25.413, encoded according to the encoding scheme 
-	-- mandated by 3GPP TS 25.413
-	-- Padding bits are included, if needed, in the least significant bits of the 
-	-- last octet of the octet string. 
-
-maxNumOfEncryptionInfo INTEGER ::= 100
-
--- authentication management types
-
-SendAuthenticationInfoArg ::= SEQUENCE {
-	imsi			[0] IMSI,
-	numberOfRequestedVectors	NumberOfRequestedVectors,
-	segmentationProhibited	NULL			OPTIONAL,
-	immediateResponsePreferred	[1] NULL			OPTIONAL,
-	re-synchronisationInfo	Re-synchronisationInfo	OPTIONAL,
-	extensionContainer	[2] ExtensionContainer	OPTIONAL,
-	...,
-	requestingNodeType	[3] RequestingNodeType	OPTIONAL,
-	requestingPLMN-Id	[4] PLMN-Id	OPTIONAL,
-	numberOfRequestedAdditional-Vectors	[5] NumberOfRequestedVectors	OPTIONAL,
-	additionalVectorsAreForEPS	[6] NULL		OPTIONAL }	
-
-
-NumberOfRequestedVectors ::= INTEGER (1..5)
-
-Re-synchronisationInfo ::= SEQUENCE {
-	rand			RAND,
-	auts			AUTS,
-	...}
-
-SendAuthenticationInfoRes ::= [3] SEQUENCE {
-	authenticationSetList	AuthenticationSetList 	OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...,
-	eps-AuthenticationSetList	[2] EPS-AuthenticationSetList	OPTIONAL }
-
-EPS-AuthenticationSetList ::= SEQUENCE SIZE (1..5) OF
-				EPC-AV
-
-EPC-AV ::= SEQUENCE {
-	rand			RAND,
-	xres			XRES,
-	autn			AUTN,
-	kasme		KASME,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-KASME ::= OCTET STRING (SIZE (16))
-
-RequestingNodeType ::= ENUMERATED {
-	vlr  (0),
-	sgsn  (1),
-	...,
-	s-cscf  (2),
-	bsf  (3),
-	gan-aaa-server  (4),
-	wlan-aaa-server  (5),
-	mme		(16),
-	mme-sgsn	(17)
-	}
-	-- the values 2, 3, 4 and 5 shall not be used on the MAP-D or Gr interfaces
-	-- exception handling:
-	-- received values in the range (6-15) shall be treated as "vlr"
-	-- received values greater than 17 shall be treated as "sgsn"
-
--- equipment management types
-
-CheckIMEI-Arg ::= SEQUENCE {
-	imei			IMEI,
-	requestedEquipmentInfo	RequestedEquipmentInfo,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-CheckIMEI-Res ::= SEQUENCE {
-	equipmentStatus	EquipmentStatus	OPTIONAL,
-	bmuef		UESBI-Iu		OPTIONAL,
-	extensionContainer	[0] ExtensionContainer	OPTIONAL,
-	...}
-
-RequestedEquipmentInfo::= BIT STRING {
-	equipmentStatus  (0),
-	bmuef  (1)} (SIZE (2..8))
-	-- exception handling: reception of unknown bit assignments in the
-	-- RequestedEquipmentInfo data type shall be discarded by the receiver 
-
-UESBI-Iu ::= SEQUENCE {
-	uesbi-IuA	[0] UESBI-IuA				OPTIONAL,
-	uesbi-IuB	[1] UESBI-IuB				OPTIONAL,
-	...}
-
-UESBI-IuA				::= BIT STRING (SIZE(1..128))
--- See 3GPP TS 25.413
-
-UESBI-IuB				::= BIT STRING (SIZE(1..128))
--- See 3GPP TS 25.413
-
-EquipmentStatus ::= ENUMERATED {
-	whiteListed  (0),
-	blackListed  (1),
-	greyListed  (2)}
-
--- subscriber management types
-
-InsertSubscriberDataArg ::= SEQUENCE {
-	imsi			[0] IMSI		OPTIONAL,
-	COMPONENTS OF	SubscriberData,
-	extensionContainer	[14] ExtensionContainer	OPTIONAL,
-	... ,	
-	naea-PreferredCI	[15] NAEA-PreferredCI	OPTIONAL,
-	-- naea-PreferredCI is included at the discretion of the HLR operator.
-	gprsSubscriptionData	[16] GPRSSubscriptionData	OPTIONAL,
-	roamingRestrictedInSgsnDueToUnsupportedFeature [23] 	NULL	
-							OPTIONAL, 
-	networkAccessMode	[24] NetworkAccessMode	OPTIONAL,
-	lsaInformation	[25] LSAInformation	OPTIONAL,
-	lmu-Indicator	[21]	NULL		OPTIONAL,
-	lcsInformation	[22]	LCSInformation	OPTIONAL,
-	istAlertTimer	[26] IST-AlertTimerValue	OPTIONAL,
-	superChargerSupportedInHLR	[27] AgeIndicator	OPTIONAL,
-	mc-SS-Info	[28] MC-SS-Info	OPTIONAL,
-	cs-AllocationRetentionPriority	[29] CS-AllocationRetentionPriority		OPTIONAL,
-	sgsn-CAMEL-SubscriptionInfo	[17] SGSN-CAMEL-SubscriptionInfo	OPTIONAL,
-	chargingCharacteristics 	[18]	ChargingCharacteristics 	OPTIONAL,
-	accessRestrictionData	[19] AccessRestrictionData	OPTIONAL,
-	ics-Indicator	[20]	BOOLEAN	OPTIONAL,
-	eps-SubscriptionData	[31]	EPS-SubscriptionData	OPTIONAL,
-	csg-SubscriptionDataList	[32] CSG-SubscriptionDataList	OPTIONAL }
-	-- If the Network Access Mode parameter is sent, it shall be present only in 
-	-- the first sequence if seqmentation is used
-
-CSG-SubscriptionDataList ::= SEQUENCE SIZE (1..50) OF
-				CSG-SubscriptionData
-
-CSG-SubscriptionData ::= SEQUENCE {
-	csg-Id	 		CSG-Id,
-	expirationDate		Time		OPTIONAL,
-	extensionContainer		ExtensionContainer 	OPTIONAL,
-	...}
-
-CSG-Id ::= BIT STRING (SIZE (27))
-	-- coded according to 3GPP TS 23.003 [17].
-
-Time ::= OCTET STRING (SIZE (4))
-	-- Octets are coded according to IETF RFC 3588 [139]
-
-
-EPS-SubscriptionData ::= SEQUENCE {
-	apn-oi-Replacement	[0]	APN-OI-Replacement	OPTIONAL,
-	rfsp-id		[2]	RFSP-ID		OPTIONAL,
-	ambr			[3]	AMBR		OPTIONAL,
-	apn-ConfigurationProfile	[4]	APN-ConfigurationProfile	OPTIONAL,
-	stn-sr		[6]	ISDN-AddressString	OPTIONAL,
-	extensionContainer	[5]	ExtensionContainer	OPTIONAL,
-	... }
-
-APN-OI-Replacement ::=  OCTET STRING (SIZE (9..100))
-	-- Octets are coded as APN Operator Identifier according to TS 3GPP TS 23.003 [17] 
-
-RFSP-ID ::=  INTEGER (1..256)
-
-APN-ConfigurationProfile ::= SEQUENCE {
-	defaultContext	ContextId,
-	completeDataListIncluded	NULL			OPTIONAL,
-		-- If segmentation is used, completeDataListIncluded may only be present in the
-		-- first segment of APN-ConfigurationProfile.
-	epsDataList	[1]	EPS-DataList,
-	extensionContainer	[2] ExtensionContainer	OPTIONAL,
-	... }
-
-EPS-DataList ::= SEQUENCE SIZE (1..maxNumOfAPN-Configurations) OF
-				APN-Configuration
-
-
-maxNumOfAPN-Configurations  INTEGER ::= 50
-
-
-APN-Configuration ::= SEQUENCE {
-	contextId		[0] ContextId,
-	servedPartyIP-Address	[1] PDP-Address	OPTIONAL,
-	apn			[2] APN,
-	eps-qos-Subscribed	[3] EPS-QoS-Subscribed,
-	pdn-gw-Identity	[4] PDN-GW-Identity	OPTIONAL,
-	pdn-gw-AllocationType	[5] PDN-GW-AllocationType	OPTIONAL,
-	vplmnAddressAllowed	[6] NULL		OPTIONAL,
-	chargingCharacteristics	[7] ChargingCharacteristics	OPTIONAL,
-	ambr			[8] AMBR		OPTIONAL,
-	specificAPNInfoList	[9] SpecificAPNInfoList	OPTIONAL,	extensionContainer	[10] ExtensionContainer	OPTIONAL,
-	... }
-
-EPS-QoS-Subscribed ::= SEQUENCE {
-	qos-Class-Identifier	[0] QoS-Class-Identifier,
-	allocation-Retention-Priority	[1] Allocation-Retention-Priority,
-	extensionContainer	[2] ExtensionContainer	OPTIONAL,
-	... }
-
-AMBR ::= SEQUENCE {
-	max-RequestedBandwidth-UL	[0] Bandwidth,
-	max-RequestedBandwidth-DL	[1] Bandwidth,
-	extensionContainer	[2] ExtensionContainer	OPTIONAL,
-	... }
-
-
-SpecificAPNInfoList ::= SEQUENCE SIZE (1..maxNumOfSpecificAPNInfos) OF
-				SpecificAPNInfo
-
-maxNumOfSpecificAPNInfos  INTEGER ::= 50
-
-SpecificAPNInfo ::= SEQUENCE {
-	apn			[0] APN,
-	pdn-gw-Identity	[1] PDN-GW-Identity,
-	extensionContainer	[2] ExtensionContainer	OPTIONAL,
-	... }
-
-Bandwidth ::= INTEGER 
-	-- bits per second
-
-QoS-Class-Identifier ::= INTEGER (1..9)
-	-- values are defined in  3GPP TS 29.212
-
-
-
-Allocation-Retention-Priority ::= SEQUENCE {
-	priority-level	[0] INTEGER,
-	pre-emption-capability	[1] BOOLEAN	OPTIONAL,
-	pre-emption-vulnerability	[2] BOOLEAN	OPTIONAL,
-	extensionContainer	[3] ExtensionContainer	OPTIONAL,
-	... }
-
-PDN-GW-Identity ::= SEQUENCE {
-	pdn-gw-ipv4-Address	[0] PDP-Address	OPTIONAL,
-	pdn-gw-ipv6-Address	[1] PDP-Address	OPTIONAL,
-	pdn-gw-name	[2] FQDN		OPTIONAL,
-	extensionContainer	[3] ExtensionContainer	OPTIONAL,
-	... }
-
-FQDN ::=  OCTET STRING (SIZE (9..100))
-
-
-PDN-GW-AllocationType ::= ENUMERATED {
-	static	(0),
-	dynamic	(1)}
-
-
-AccessRestrictionData ::= BIT STRING {
-	utranNotAllowed (0),
-	geranNotAllowed (1),
-	ganNotAllowed   (2),
-	i-hspa-evolutionNotAllowed (3),
-	e-utranNotAllowed (4),
-	ho-toNon3GPP-AccessNotAllowed (5) } (SIZE (2..8))
-	-- exception handling: 
-	-- access restriction data related to an access type not supported by a node
-	-- shall be ignored
-	-- bits 6 to 7 shall be ignored if received and not understood
-	
-
-CS-AllocationRetentionPriority ::= OCTET STRING (SIZE (1))
-	-- This data type encodes each priority level defined in TS 23.107 as the binary value
-	-- of the priority level.
-
-IST-AlertTimerValue ::= INTEGER (15..255)
-
-LCSInformation ::= SEQUENCE {
-	gmlc-List	[0]	GMLC-List	OPTIONAL,
-	lcs-PrivacyExceptionList	[1]	LCS-PrivacyExceptionList	OPTIONAL,
-	molr-List		[2]	MOLR-List	OPTIONAL,
-	...,
-	add-lcs-PrivacyExceptionList	[3]	LCS-PrivacyExceptionList	OPTIONAL }
-	-- add-lcs-PrivacyExceptionList may be sent only if lcs-PrivacyExceptionList is
-	-- present and contains four instances of LCS-PrivacyClass. If the mentioned condition
-	-- is not satisfied the receiving node shall discard add-lcs-PrivacyExceptionList.
-	-- If an LCS-PrivacyClass is received both in lcs-PrivacyExceptionList and in
-	-- add-lcs-PrivacyExceptionList with the same SS-Code, then the error unexpected 
-	-- data value shall be returned.
-
-GMLC-List ::= SEQUENCE SIZE (1..maxNumOfGMLC) OF
-				ISDN-AddressString
-	-- if segmentation is used, the complete GMLC-List shall be sent in one segment
-
-maxNumOfGMLC  INTEGER ::= 5
-
-NetworkAccessMode ::= ENUMERATED {
-	packetAndCircuit	(0),
-	onlyCircuit		(1),
-	onlyPacket		(2),
-	...}
-	-- if unknown values are received in NetworkAccessMode
-	-- they shall be discarded.
-
-GPRSDataList ::= SEQUENCE SIZE (1..maxNumOfPDP-Contexts) OF
-				PDP-Context
-
-maxNumOfPDP-Contexts  INTEGER ::= 50
-
-PDP-Context ::= SEQUENCE {
-	pdp-ContextId	ContextId,
-	pdp-Type		[16] PDP-Type,
-	pdp-Address	[17] PDP-Address	OPTIONAL,
-	qos-Subscribed	[18] QoS-Subscribed,
-	vplmnAddressAllowed	[19] NULL	OPTIONAL,
-	apn			[20] APN,
-	extensionContainer	[21] ExtensionContainer	OPTIONAL,
-	... ,
-	ext-QoS-Subscribed	[0] Ext-QoS-Subscribed	OPTIONAL, 
-	pdp-ChargingCharacteristics	[1] ChargingCharacteristics	OPTIONAL,
-	ext2-QoS-Subscribed	[2] Ext2-QoS-Subscribed	OPTIONAL,
-	-- ext2-QoS-Subscribed may be present only if ext-QoS-Subscribed is present.
-	ext3-QoS-Subscribed	[3] Ext3-QoS-Subscribed	OPTIONAL
-	-- ext3-QoS-Subscribed may be present only if ext2-QoS-Subscribed is present.
-	 }
-
-ContextId ::= INTEGER (1..maxNumOfPDP-Contexts)
-
-GPRSSubscriptionData ::= SEQUENCE {
-	completeDataListIncluded	NULL			OPTIONAL,
-		-- If segmentation is used, completeDataListIncluded may only be present in the
-		-- first segment of GPRSSubscriptionData.
-	gprsDataList	[1]	GPRSDataList,
-	extensionContainer	[2] ExtensionContainer	OPTIONAL,
-	... }
-
-SGSN-CAMEL-SubscriptionInfo ::= SEQUENCE {
-	gprs-CSI		[0]	GPRS-CSI	OPTIONAL,
-	mo-sms-CSI	[1]	SMS-CSI	OPTIONAL,
-	extensionContainer	[2]	ExtensionContainer	OPTIONAL,
-	...,
-	mt-sms-CSI	[3]	SMS-CSI	OPTIONAL,
-	mt-smsCAMELTDP-CriteriaList	[4]	MT-smsCAMELTDP-CriteriaList	OPTIONAL,
-	mg-csi		[5]	MG-CSI	OPTIONAL
-	}
-
-GPRS-CSI ::= SEQUENCE {
-	gprs-CamelTDPDataList	[0] GPRS-CamelTDPDataList	OPTIONAL,
-	camelCapabilityHandling	[1] CamelCapabilityHandling	OPTIONAL,
-	extensionContainer	[2] ExtensionContainer	OPTIONAL,
-	notificationToCSE	[3]	NULL		OPTIONAL,
-	csi-Active	[4]	NULL		OPTIONAL,
-	...}
---	notificationToCSE and csi-Active shall not be present when GPRS-CSI is sent to SGSN.
---	They may only be included in ATSI/ATM ack/NSDC message. 
---	GPRS-CamelTDPData and  camelCapabilityHandling shall be present in 
---	the GPRS-CSI sequence.
---	If GPRS-CSI is segmented, gprs-CamelTDPDataList and camelCapabilityHandling shall be 
---	present in the first segment
-
-GPRS-CamelTDPDataList ::= SEQUENCE SIZE (1..maxNumOfCamelTDPData) OF
-	GPRS-CamelTDPData
---	GPRS-CamelTDPDataList shall not contain more than one instance of
---	GPRS-CamelTDPData containing the same value for gprs-TriggerDetectionPoint.
-
-GPRS-CamelTDPData ::= SEQUENCE {
-	gprs-TriggerDetectionPoint	[0] GPRS-TriggerDetectionPoint,
-	serviceKey	[1] ServiceKey,
-	gsmSCF-Address	[2] ISDN-AddressString,
-	defaultSessionHandling	[3] DefaultGPRS-Handling,
-	extensionContainer	[4] ExtensionContainer	OPTIONAL,
-	...
-	}
-
-DefaultGPRS-Handling ::= ENUMERATED {
-	continueTransaction (0) ,
-	releaseTransaction (1) ,
-	...}
--- exception handling:
--- reception of values in range 2-31 shall be treated as "continueTransaction"
--- reception of values greater than 31 shall be treated as "releaseTransaction"
-
-GPRS-TriggerDetectionPoint ::= ENUMERATED {
-	attach 			(1),
-	attachChangeOfPosition 		(2),
-	pdp-ContextEstablishment 		(11),
-	pdp-ContextEstablishmentAcknowledgement	(12),
-	pdp-ContextChangeOfPosition 		(14),
-	... }
--- exception handling:
--- For GPRS-CamelTDPData sequences containing this parameter with any
--- other value than the ones listed the receiver shall ignore the whole 
--- GPRS-CamelTDPDatasequence.
-
-APN ::=  OCTET STRING (SIZE (2..63))
-	-- Octets are coded according to TS 3GPP TS 23.003 [17] 
-
-PDP-Type ::= OCTET STRING (SIZE (2))
-	-- Octets are coded according to TS 3GPP TS 29.060 [105]
-
-PDP-Address ::= OCTET STRING (SIZE (1..16))
-	-- Octets are coded according to TS 3GPP TS 29.060 [105]
-
-	-- The possible size values are:
-	-- 1-7 octets  X.25 address type
-	--  4  octets  IPv4 address type
-	-- 16  octets  Ipv6 address type
-
-QoS-Subscribed ::= OCTET STRING (SIZE (3))
-	-- Octets are coded according to TS 3GPP TS 24.008 [35] Quality of Service Octets 
-	-- 3-5.
-
-Ext-QoS-Subscribed ::= OCTET STRING (SIZE (1..9))
-	-- OCTET 1: 
-	--  Allocation/Retention Priority (This octet encodes each priority level defined in
-	--     23.107 as the binary value of the priority level, declaration in 29.060)
-	-- Octets 2-9 are coded according to 3GPP TS 24.008 [35] Quality of Service Octets 
-	-- 6-13.
-
-Ext2-QoS-Subscribed ::= OCTET STRING (SIZE (1..3))
-	-- Octets 1-3 are coded according to 3GPP TS 24.008 [35] Quality of Service Octets 14-16.
-	-- If Quality of Service information is structured with 14 octet length, then
-	-- Octet 1 is coded according to 3GPP TS 24.008 [35] Quality of Service Octet 14.
-
-Ext3-QoS-Subscribed ::= OCTET STRING (SIZE (1..2))
-	-- Octets 1-2 are coded according to 3GPP TS 24.008 [35] Quality of Service Octets 17-18.
-
-ChargingCharacteristics ::= OCTET STRING (SIZE (2))
-	-- Octets are coded according to 3GPP TS 32.215.
-
-LSAOnlyAccessIndicator ::= ENUMERATED {
-	accessOutsideLSAsAllowed  (0),
-	accessOutsideLSAsRestricted (1)}
-
-LSADataList ::= SEQUENCE SIZE (1..maxNumOfLSAs) OF
-				LSAData
-
-maxNumOfLSAs  INTEGER ::= 20
-
-LSAData ::= SEQUENCE {
-	lsaIdentity	[0] LSAIdentity,
-	lsaAttributes	[1] LSAAttributes,
-	lsaActiveModeIndicator	[2] NULL		OPTIONAL,
-	extensionContainer	[3] ExtensionContainer	OPTIONAL,
-	...}
-
-LSAInformation ::= SEQUENCE {
-	completeDataListIncluded	NULL			OPTIONAL,
-
-		-- If segmentation is used, completeDataListIncluded may only be present in the
-		-- first segment.
-	lsaOnlyAccessIndicator	[1]	LSAOnlyAccessIndicator	OPTIONAL,
-	lsaDataList	[2]	LSADataList	OPTIONAL,
-	extensionContainer	[3] ExtensionContainer	OPTIONAL,
-	...}
-
-LSAIdentity ::= OCTET STRING (SIZE (3))
-	-- Octets are coded according to TS 3GPP TS 23.003 [17]
-
-LSAAttributes ::= OCTET STRING (SIZE (1))
-	-- Octets are coded according to TS 3GPP TS 48.008 [49]
-
-SubscriberData ::= SEQUENCE {
-	msisdn		[1] ISDN-AddressString	OPTIONAL,
-	category		[2] Category	OPTIONAL,
-	subscriberStatus	[3] SubscriberStatus	OPTIONAL,
-	bearerServiceList	[4] BearerServiceList	OPTIONAL,
-	-- The exception handling for reception of unsupported / not allocated
-	-- bearerServiceCodes is defined in section 8.8.1
-	teleserviceList	[6] TeleserviceList	OPTIONAL,
-	-- The exception handling for reception of unsupported / not allocated
-	-- teleserviceCodes is defined in section 8.8.1
-	provisionedSS	[7] Ext-SS-InfoList	OPTIONAL,
-	odb-Data		[8] ODB-Data	OPTIONAL,
-	roamingRestrictionDueToUnsupportedFeature  [9] NULL	OPTIONAL,
-	regionalSubscriptionData	[10] ZoneCodeList	OPTIONAL,
-	vbsSubscriptionData	[11] VBSDataList	OPTIONAL,
-	vgcsSubscriptionData	[12] VGCSDataList	OPTIONAL,
-	vlrCamelSubscriptionInfo	[13] VlrCamelSubscriptionInfo	OPTIONAL
-	}
-
-Category ::= OCTET STRING (SIZE (1))
-	-- The internal structure is defined in ITU-T Rec Q.763.
-
-SubscriberStatus ::= ENUMERATED {
-	serviceGranted  (0),
-	operatorDeterminedBarring  (1)}
-
-BearerServiceList ::= SEQUENCE SIZE (1..maxNumOfBearerServices) OF
-				Ext-BearerServiceCode
-
-maxNumOfBearerServices  INTEGER ::= 50
-
-TeleserviceList ::= SEQUENCE SIZE (1..maxNumOfTeleservices) OF
-				Ext-TeleserviceCode
-
-maxNumOfTeleservices  INTEGER ::= 20
-
-ODB-Data ::= SEQUENCE {
-	odb-GeneralData	ODB-GeneralData,
-	odb-HPLMN-Data	ODB-HPLMN-Data	OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-ODB-GeneralData ::= BIT STRING {
-	allOG-CallsBarred  (0),
-	internationalOGCallsBarred  (1),
-	internationalOGCallsNotToHPLMN-CountryBarred  (2),
-	interzonalOGCallsBarred (6),
-	interzonalOGCallsNotToHPLMN-CountryBarred (7),
-	interzonalOGCallsAndInternationalOGCallsNotToHPLMN-CountryBarred (8),
-	premiumRateInformationOGCallsBarred  (3),
-	premiumRateEntertainementOGCallsBarred  (4),
-	ss-AccessBarred  (5),
-	allECT-Barred (9),
-	chargeableECT-Barred (10),
-	internationalECT-Barred (11),
-	interzonalECT-Barred (12),
-	doublyChargeableECT-Barred (13),
-	multipleECT-Barred (14),
-	allPacketOrientedServicesBarred (15),
-	roamerAccessToHPLMN-AP-Barred  (16),
-	roamerAccessToVPLMN-AP-Barred  (17),
-	roamingOutsidePLMNOG-CallsBarred  (18),
-	allIC-CallsBarred  (19),
-	roamingOutsidePLMNIC-CallsBarred  (20),
-	roamingOutsidePLMNICountryIC-CallsBarred  (21),
-	roamingOutsidePLMN-Barred  (22),
-	roamingOutsidePLMN-CountryBarred  (23),
-	registrationAllCF-Barred  (24),
-	registrationCFNotToHPLMN-Barred  (25),
-	registrationInterzonalCF-Barred  (26),
-	registrationInterzonalCFNotToHPLMN-Barred  (27),
-	registrationInternationalCF-Barred  (28)} (SIZE (15..32))
-	-- exception handling: reception of unknown bit assignments in the
-	-- ODB-GeneralData type shall be treated like unsupported ODB-GeneralData
-	-- When the ODB-GeneralData type is removed from the HLR for a given subscriber, 
-	-- in NoteSubscriberDataModified operation sent toward the gsmSCF 
-	-- all bits shall be set to "O".
-
-ODB-HPLMN-Data ::= BIT STRING {
-	plmn-SpecificBarringType1  (0),
-	plmn-SpecificBarringType2  (1),
-	plmn-SpecificBarringType3  (2),
-	plmn-SpecificBarringType4  (3)} (SIZE (4..32))
-	-- exception handling: reception of unknown bit assignments in the
-	-- ODB-HPLMN-Data type shall be treated like unsupported ODB-HPLMN-Data 
-	-- When the ODB-HPLMN-Data type is removed from the HLR for a given subscriber, 
-	-- in NoteSubscriberDataModified operation sent toward the gsmSCF
-	-- all bits shall be set to "O".
-
-Ext-SS-InfoList ::= SEQUENCE SIZE (1..maxNumOfSS) OF
-				Ext-SS-Info
-
-Ext-SS-Info ::= CHOICE {
-	forwardingInfo	[0] Ext-ForwInfo,
-	callBarringInfo	[1] Ext-CallBarInfo,
-	cug-Info		[2] CUG-Info,
-	ss-Data		[3] Ext-SS-Data,
-	emlpp-Info	[4] EMLPP-Info}
-
-Ext-ForwInfo ::= SEQUENCE {
-	ss-Code		SS-Code,
-	forwardingFeatureList	Ext-ForwFeatureList,
-	extensionContainer	[0] ExtensionContainer	OPTIONAL,
-	...}
-
-Ext-ForwFeatureList ::= SEQUENCE SIZE (1..maxNumOfExt-BasicServiceGroups) OF
-				Ext-ForwFeature
-
-Ext-ForwFeature ::= SEQUENCE {
-	basicService	Ext-BasicServiceCode	OPTIONAL,
-	ss-Status		[4] Ext-SS-Status,
-	forwardedToNumber	[5] ISDN-AddressString	OPTIONAL,
-	-- When this data type is sent from an HLR which supports CAMEL Phase 2
-	-- to a VLR that supports CAMEL Phase 2 the VLR shall not check the
-	-- format of the number
-	forwardedToSubaddress	[8] ISDN-SubaddressString	OPTIONAL,
-	forwardingOptions	[6] Ext-ForwOptions	OPTIONAL,
-	noReplyConditionTime	[7] Ext-NoRepCondTime	OPTIONAL,
-	extensionContainer	[9] ExtensionContainer	OPTIONAL,
-	...,
-	longForwardedToNumber	[10] FTN-AddressString	OPTIONAL }
-
-Ext-ForwOptions ::= OCTET STRING (SIZE (1..5))
-
-	-- OCTET 1:
-
-	--  bit 8: notification to forwarding party
-	--	0  no notification
-	--	1  notification
-
-	--  bit 7: redirecting presentation
-	--	0 no presentation  
-	--	1  presentation
-
-	--  bit 6: notification to calling party
-	--	0  no notification
-	--	1  notification
-
-	--  bit 5: 0 (unused)
-
-	--  bits 43: forwarding reason
-	--	00  ms not reachable
-	--	01  ms busy
-	--	10  no reply
-	--	11  unconditional
-
-	-- bits 21: 00 (unused)
-
-	-- OCTETS 2-5: reserved for future use. They shall be discarded if
-	-- received and not understood.
-
-Ext-NoRepCondTime ::= INTEGER (1..100)
-	-- Only values 5-30 are used.
-	-- Values in the ranges 1-4 and 31-100 are reserved for future use
-	-- If received:
-	--		values 1-4 shall be mapped on to value 5
-	--		values 31-100 shall be mapped on to value 30
-
-Ext-CallBarInfo ::= SEQUENCE {
-	ss-Code		SS-Code,
-	callBarringFeatureList	Ext-CallBarFeatureList,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-Ext-CallBarFeatureList ::= SEQUENCE SIZE (1..maxNumOfExt-BasicServiceGroups) OF
-				Ext-CallBarringFeature
-
-Ext-CallBarringFeature ::= SEQUENCE {
-	basicService	Ext-BasicServiceCode	OPTIONAL,
-	ss-Status		[4] Ext-SS-Status,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-CUG-Info ::= SEQUENCE {
-	cug-SubscriptionList	CUG-SubscriptionList,
-	cug-FeatureList	CUG-FeatureList	OPTIONAL,
-	extensionContainer	[0] ExtensionContainer	OPTIONAL,
-	...}
-
-CUG-SubscriptionList ::= SEQUENCE SIZE (0..maxNumOfCUG) OF
-				CUG-Subscription
-
-CUG-Subscription ::= SEQUENCE {
-	cug-Index	CUG-Index,
-	cug-Interlock	CUG-Interlock,
-	intraCUG-Options	IntraCUG-Options,
-	basicServiceGroupList	Ext-BasicServiceGroupList	OPTIONAL,
-	extensionContainer	[0] ExtensionContainer	OPTIONAL,
-	...}
-
-CUG-Index ::= INTEGER (0..32767)
-	-- The internal structure is defined in ETS 300 138.
-
-CUG-Interlock ::= OCTET STRING (SIZE (4))
-
-IntraCUG-Options ::= ENUMERATED {
-	noCUG-Restrictions  (0),
-	cugIC-CallBarred  (1),
-	cugOG-CallBarred  (2)}
-
-maxNumOfCUG  INTEGER ::= 10
-
-CUG-FeatureList ::= SEQUENCE SIZE (1..maxNumOfExt-BasicServiceGroups) OF
-				CUG-Feature
-
-Ext-BasicServiceGroupList ::= SEQUENCE SIZE (1..maxNumOfExt-BasicServiceGroups) OF
-				Ext-BasicServiceCode
-
-maxNumOfExt-BasicServiceGroups  INTEGER ::= 32
-
-CUG-Feature ::= SEQUENCE {
-	basicService	Ext-BasicServiceCode	OPTIONAL,
-	preferentialCUG-Indicator	CUG-Index	OPTIONAL,
-	interCUG-Restrictions	InterCUG-Restrictions,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-InterCUG-Restrictions ::= OCTET STRING (SIZE (1))
-
-	-- bits 876543: 000000 (unused)
-	-- Exception handling:
-	-- bits 876543 shall be ignored if received and not understood
-
-	-- bits 21
-	--	00  CUG only facilities
-	--	01  CUG with outgoing access
-	--	10  CUG with incoming access
-	--	11  CUG with both outgoing and incoming access
-
-Ext-SS-Data ::= SEQUENCE {
-	ss-Code		SS-Code,
-	ss-Status	[4] Ext-SS-Status,
-	ss-SubscriptionOption	SS-SubscriptionOption	OPTIONAL,
-	basicServiceGroupList	Ext-BasicServiceGroupList	OPTIONAL,
-	extensionContainer	[5] ExtensionContainer	OPTIONAL,
-	...}
-
-LCS-PrivacyExceptionList ::= SEQUENCE SIZE (1..maxNumOfPrivacyClass) OF
-				LCS-PrivacyClass
-
-maxNumOfPrivacyClass  INTEGER ::= 4
-
-LCS-PrivacyClass ::= SEQUENCE {
-	ss-Code		SS-Code,
-	ss-Status		Ext-SS-Status,
-	notificationToMSUser	[0] NotificationToMSUser	OPTIONAL,
-	-- notificationToMSUser may be sent only for SS-codes callSessionRelated
-	-- and callSessionUnrelated. If not received for SS-codes callSessionRelated
-	-- and callSessionUnrelated,
-	-- the default values according to 3GPP TS 23.271 shall be assumed.
-	externalClientList	[1] ExternalClientList	OPTIONAL,
-	-- externalClientList may be sent only for SS-code callSessionUnrelated to a
-	-- visited node that does not support LCS Release 4 or later versions.
-	-- externalClientList may be sent only for SS-codes callSessionUnrelated and
-	-- callSessionRelated to a visited node that supports LCS Release 4 or later versions.
-	plmnClientList	[2] PLMNClientList	OPTIONAL,
-	-- plmnClientList may be sent only for SS-code plmnoperator.
-	extensionContainer	[3] ExtensionContainer	OPTIONAL,
-	...,
-	ext-externalClientList	[4] Ext-ExternalClientList	OPTIONAL,
-	-- Ext-externalClientList may be sent only if the visited node supports LCS Release 4 or
-	-- later versions, the user did specify more than 5 clients, and White Book SCCP is used.
-	serviceTypeList	[5]	ServiceTypeList	OPTIONAL
-	-- serviceTypeList may be sent only for SS-code serviceType and if the visited node
-	-- supports LCS Release 5 or later versions.
-	-- 
-	-- if segmentation is used, the complete LCS-PrivacyClass shall be sent in one segment
-}
-
-ExternalClientList ::= SEQUENCE SIZE (0..maxNumOfExternalClient) OF
-				ExternalClient
-
-maxNumOfExternalClient  INTEGER ::= 5
-
-PLMNClientList ::= SEQUENCE SIZE (1..maxNumOfPLMNClient) OF
-				LCSClientInternalID
-
-maxNumOfPLMNClient  INTEGER ::= 5
-
-Ext-ExternalClientList ::= SEQUENCE SIZE (1..maxNumOfExt-ExternalClient) OF
-				ExternalClient
-
-maxNumOfExt-ExternalClient  INTEGER ::= 35
-
-ExternalClient ::= SEQUENCE {
-	clientIdentity	LCSClientExternalID,
-	gmlc-Restriction	[0] GMLC-Restriction	OPTIONAL,
-	notificationToMSUser	[1] NotificationToMSUser	OPTIONAL,
-	-- If notificationToMSUser is not received, the default value according to 
-	-- 3GPP TS 23.271 shall be assumed.
-	extensionContainer	[2] ExtensionContainer	OPTIONAL,
-	... }
-
-GMLC-Restriction ::= ENUMERATED {
-	gmlc-List		(0),
-	home-Country	(1) ,
-	... }
--- exception handling:
--- At reception of any other value than the ones listed the receiver shall ignore
--- GMLC-Restriction.
-
-NotificationToMSUser ::= ENUMERATED {
-	notifyLocationAllowed	(0),
-	notifyAndVerify-LocationAllowedIfNoResponse	(1),
-	notifyAndVerify-LocationNotAllowedIfNoResponse	(2),
-	...,
-	locationNotAllowed (3) }
--- exception handling:
--- At reception of any other value than the ones listed the receiver shall ignore
--- NotificationToMSUser.
-
-ServiceTypeList ::= SEQUENCE SIZE (1..maxNumOfServiceType) OF
-				ServiceType
-
-maxNumOfServiceType  INTEGER ::= 32
-
-ServiceType ::= SEQUENCE {
-	serviceTypeIdentity	LCSServiceTypeID,
-	gmlc-Restriction	[0] GMLC-Restriction	OPTIONAL,
-	notificationToMSUser	[1] NotificationToMSUser	OPTIONAL,
-	-- If notificationToMSUser is not received, the default value according to 
-	-- 3GPP TS 23.271 shall be assumed.
-	extensionContainer	[2] ExtensionContainer	OPTIONAL,
-	... }
-
-MOLR-List ::= SEQUENCE SIZE (1..maxNumOfMOLR-Class) OF
-				MOLR-Class
-
-maxNumOfMOLR-Class  INTEGER ::= 3
-
-MOLR-Class ::= SEQUENCE {
-	ss-Code		SS-Code,
-	ss-Status		Ext-SS-Status,
-	extensionContainer	[0] ExtensionContainer	OPTIONAL,
-	...}
-
-ZoneCodeList ::= SEQUENCE SIZE (1..maxNumOfZoneCodes)
-				OF ZoneCode
-
-ZoneCode ::= OCTET STRING (SIZE (2))
-	-- internal structure is defined in TS 3GPP TS 23.003 [17]
-
-maxNumOfZoneCodes  INTEGER ::= 10
-
-InsertSubscriberDataRes ::= SEQUENCE {
-	teleserviceList	[1] TeleserviceList	OPTIONAL,
-	bearerServiceList	[2] BearerServiceList	OPTIONAL,
-	ss-List		[3] SS-List	OPTIONAL,
-	odb-GeneralData	[4] ODB-GeneralData	OPTIONAL,
-	regionalSubscriptionResponse	[5] RegionalSubscriptionResponse	OPTIONAL,
-	supportedCamelPhases	[6] SupportedCamelPhases	OPTIONAL,
-	extensionContainer	[7] ExtensionContainer	OPTIONAL,
-	... ,
-	offeredCamel4CSIs	[8] OfferedCamel4CSIs	OPTIONAL,
-	supportedFeatures	[9] SupportedFeatures	OPTIONAL }
-
-RegionalSubscriptionResponse ::= ENUMERATED {
-	networkNode-AreaRestricted	(0),
-	tooManyZoneCodes	(1),
-	zoneCodesConflict	(2),
-	regionalSubscNotSupported	(3)}
-
-DeleteSubscriberDataArg ::= SEQUENCE {
-	imsi			[0] IMSI,
-	basicServiceList	[1] BasicServiceList	OPTIONAL,
-	-- The exception handling for reception of unsupported/not allocated
-	-- basicServiceCodes is defined in section 6.8.2
-	ss-List		[2] SS-List	OPTIONAL,
-	roamingRestrictionDueToUnsupportedFeature [4] NULL	OPTIONAL,
-	regionalSubscriptionIdentifier	[5] ZoneCode	OPTIONAL,
-	vbsGroupIndication	[7] NULL		OPTIONAL,
-	vgcsGroupIndication	[8] NULL	 	OPTIONAL,
-	camelSubscriptionInfoWithdraw	[9] NULL	 	OPTIONAL,
-	extensionContainer	[6] ExtensionContainer 	OPTIONAL,
-	...,
-	gprsSubscriptionDataWithdraw	[10] GPRSSubscriptionDataWithdraw	OPTIONAL,
-	roamingRestrictedInSgsnDueToUnsuppportedFeature [11] NULL	OPTIONAL,
-	lsaInformationWithdraw	[12] LSAInformationWithdraw	OPTIONAL,
-	gmlc-ListWithdraw 	[13]	NULL		OPTIONAL,
-	istInformationWithdraw	[14] NULL		OPTIONAL,
-	specificCSI-Withdraw	[15] SpecificCSI-Withdraw	OPTIONAL,
-	chargingCharacteristicsWithdraw	[16] NULL		OPTIONAL,
-	stn-srWithdraw	[17] NULL		OPTIONAL,
-	epsSubscriptionDataWithdraw	[18] EPS-SubscriptionDataWithdraw	OPTIONAL,
-	apn-oi-replacementWithdraw	[19] NULL		OPTIONAL,
-	csg-SubscriptionDeleted	[20]	NULL		OPTIONAL }
-
-SpecificCSI-Withdraw ::= BIT STRING {
-	o-csi (0),
-	ss-csi (1),
-	tif-csi (2),
-	d-csi (3),
-	vt-csi (4),
-	mo-sms-csi (5),
-	m-csi (6),
-	gprs-csi (7),
-	t-csi (8),
-	mt-sms-csi (9),
-	mg-csi (10),
-	o-IM-CSI (11), 
-	d-IM-CSI (12),
-	vt-IM-CSI (13) } (SIZE(8..32)) 
--- exception handling:
--- bits 11 to 31 shall be ignored if received by a non-IP Multimedia Core Network entity.
--- bits 0-10 and 14-31 shall be ignored if received by an IP Multimedia Core Network entity.
--- bits 11-13 are only applicable in an IP Multimedia Core Network.
--- Bit 8 and bits 11-13 are only applicable for the NoteSubscriberDataModified operation.
-
-GPRSSubscriptionDataWithdraw ::= CHOICE {
-	allGPRSData	NULL,
-	contextIdList	ContextIdList}
-
-EPS-SubscriptionDataWithdraw ::= CHOICE {
-	allEPS-Data	NULL,
-	contextIdList	ContextIdList}
-
-ContextIdList ::= SEQUENCE SIZE (1..maxNumOfPDP-Contexts) OF
-				ContextId
-
-LSAInformationWithdraw ::= CHOICE {
-	allLSAData	NULL,
-	lsaIdentityList	LSAIdentityList }
-
-LSAIdentityList ::= SEQUENCE SIZE (1..maxNumOfLSAs) OF
-				LSAIdentity
-
-BasicServiceList ::= SEQUENCE SIZE (1..maxNumOfBasicServices) OF
-				Ext-BasicServiceCode
-
-maxNumOfBasicServices  INTEGER ::= 70
-
-DeleteSubscriberDataRes ::= SEQUENCE {
-	regionalSubscriptionResponse	[0] RegionalSubscriptionResponse	OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-VlrCamelSubscriptionInfo ::= SEQUENCE {
-	o-CSI		[0] O-CSI		OPTIONAL,
-	extensionContainer	[1] ExtensionContainer	OPTIONAL,
-	...,
-	ss-CSI		[2] SS-CSI	OPTIONAL,
-	o-BcsmCamelTDP-CriteriaList	[4] O-BcsmCamelTDPCriteriaList	OPTIONAL,
-	tif-CSI		[3] NULL	OPTIONAL,
-	m-CSI		[5] M-CSI	OPTIONAL,
-	mo-sms-CSI	[6] SMS-CSI	OPTIONAL,
-	vt-CSI		[7] T-CSI	OPTIONAL,
-	t-BCSM-CAMEL-TDP-CriteriaList	[8] T-BCSM-CAMEL-TDP-CriteriaList	OPTIONAL,
-	d-CSI		[9] D-CSI	OPTIONAL,
-	mt-sms-CSI	[10] SMS-CSI	OPTIONAL,
-	mt-smsCAMELTDP-CriteriaList	[11]	MT-smsCAMELTDP-CriteriaList	OPTIONAL
-	}
-
-MT-smsCAMELTDP-CriteriaList ::= SEQUENCE SIZE (1.. maxNumOfCamelTDPData) OF
-	MT-smsCAMELTDP-Criteria
-
-MT-smsCAMELTDP-Criteria ::= SEQUENCE {
-	sms-TriggerDetectionPoint	SMS-TriggerDetectionPoint,
-	tpdu-TypeCriterion	[0]	TPDU-TypeCriterion		OPTIONAL,
-	... }
-
-TPDU-TypeCriterion ::= SEQUENCE SIZE (1..maxNumOfTPDUTypes) OF
-	MT-SMS-TPDU-Type
-
-
-maxNumOfTPDUTypes INTEGER ::= 5
-
-MT-SMS-TPDU-Type ::= ENUMERATED {
-	sms-DELIVER 	(0),
-	sms-SUBMIT-REPORT 	(1),
-	sms-STATUS-REPORT 	(2),
-	... }
-
---	exception handling:
---	For TPDU-TypeCriterion sequences containing this parameter with any
---	other value than the ones listed above the receiver shall ignore 
---	the whole TPDU-TypeCriterion sequence.
---	In CAMEL phase 4, sms-SUBMIT-REPORT shall not be used and a received TPDU-TypeCriterion
---	sequence containing sms-SUBMIT-REPORT shall be wholly ignored.
-
-D-CSI ::= SEQUENCE {
-	dp-AnalysedInfoCriteriaList	[0] DP-AnalysedInfoCriteriaList	OPTIONAL,
-	camelCapabilityHandling	[1] CamelCapabilityHandling	OPTIONAL,
-	extensionContainer	[2] ExtensionContainer	OPTIONAL,
-	notificationToCSE	[3]	NULL		OPTIONAL,
-	csi-Active	[4]	NULL		OPTIONAL,
-	...} 
---	notificationToCSE and csi-Active shall not be present when D-CSI is sent to VLR/GMSC.
---	They may only be included in ATSI/ATM ack/NSDC message.
---	DP-AnalysedInfoCriteria and  camelCapabilityHandling shall be present in 
---	the D-CSI sequence.
---	If D-CSI is segmented, then the first segment shall contain dp-AnalysedInfoCriteriaList
---	and camelCapabilityHandling. Subsequent segments shall not contain
---	camelCapabilityHandling, but may contain dp-AnalysedInfoCriteriaList.
-
-DP-AnalysedInfoCriteriaList  ::= SEQUENCE SIZE (1..maxNumOfDP-AnalysedInfoCriteria) OF
-				DP-AnalysedInfoCriterium
-
-maxNumOfDP-AnalysedInfoCriteria INTEGER ::= 10
-
-DP-AnalysedInfoCriterium ::= SEQUENCE {
-	dialledNumber	ISDN-AddressString,
-	serviceKey	ServiceKey,
-	gsmSCF-Address	ISDN-AddressString,
-	defaultCallHandling	DefaultCallHandling,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-SS-CSI ::= SEQUENCE {
-	ss-CamelData	SS-CamelData,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...,
-	notificationToCSE	[0]	NULL		OPTIONAL,
-	csi-Active	[1]	NULL		OPTIONAL
---	notificationToCSE and csi-Active shall not be present when SS-CSI is sent to VLR.
---	They may only be included in ATSI/ATM ack/NSDC message.
-}
-
-SS-CamelData  ::= SEQUENCE {
-	ss-EventList	SS-EventList,
-	gsmSCF-Address	ISDN-AddressString,
-	extensionContainer	[0] ExtensionContainer	OPTIONAL, 
-	...}
-
-SS-EventList  ::= SEQUENCE SIZE (1..maxNumOfCamelSSEvents) OF SS-Code
-	-- Actions for the following SS-Code values are defined in CAMEL Phase 3:
-	-- ect		SS-Code ::= '00110001'B
-	-- multiPTY	SS-Code ::= '01010001'B
-	-- cd		SS-Code ::= '00100100'B
-	-- ccbs		SS-Code ::= '01000100'B
-	-- all other SS codes shall be ignored
-	-- When SS-CSI is sent to the VLR, it shall not contain a marking for ccbs.
-	-- If the VLR receives SS-CSI containing a marking for ccbs, the VLR shall discard the
-	-- ccbs marking in SS-CSI.
-
-maxNumOfCamelSSEvents INTEGER ::= 10
-
-O-CSI ::= SEQUENCE {
-	o-BcsmCamelTDPDataList	O-BcsmCamelTDPDataList,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...,
-	camelCapabilityHandling	[0] CamelCapabilityHandling	OPTIONAL,
-	notificationToCSE	[1]	NULL		OPTIONAL,
-	csiActive		[2]	NULL		OPTIONAL}
---	notificationtoCSE and csiActive shall not be present when O-CSI is sent to VLR/GMSC.
---	They may only be included in ATSI/ATM ack/NSDC message.
---	O-CSI shall not be segmented.
-
-O-BcsmCamelTDPDataList ::= SEQUENCE SIZE (1..maxNumOfCamelTDPData) OF
-	O-BcsmCamelTDPData
-	-- O-BcsmCamelTDPDataList shall not contain more than one instance of
-	-- O-BcsmCamelTDPData containing the same value for o-BcsmTriggerDetectionPoint.
-	-- For CAMEL Phase 2, this means that only one instance of O-BcsmCamelTDPData is allowed
-	-- with o-BcsmTriggerDetectionPoint being equal to DP2.
-
-maxNumOfCamelTDPData  INTEGER ::= 10
-
-O-BcsmCamelTDPData ::= SEQUENCE {
-	o-BcsmTriggerDetectionPoint	O-BcsmTriggerDetectionPoint,
-	serviceKey	ServiceKey,
-	gsmSCF-Address	[0] ISDN-AddressString,
-	defaultCallHandling	[1] DefaultCallHandling,
-	extensionContainer	[2] ExtensionContainer	OPTIONAL,
-	...
-	}
-
-ServiceKey ::= INTEGER (0..2147483647)
-
-O-BcsmTriggerDetectionPoint ::= ENUMERATED {
-	collectedInfo (2),
-	...,
-	routeSelectFailure (4) }
-	-- exception handling:
-	-- For O-BcsmCamelTDPData sequences containing this parameter with any
-	-- other value than the ones listed the receiver shall ignore the whole 
-	-- O-BcsmCamelTDPDatasequence. 
-	-- For O-BcsmCamelTDP-Criteria sequences containing this parameter with any
-	-- other value than the ones listed the receiver shall ignore the whole
-	-- O-BcsmCamelTDP-Criteria sequence.
-
-O-BcsmCamelTDPCriteriaList ::= SEQUENCE SIZE (1..maxNumOfCamelTDPData) OF
-	O-BcsmCamelTDP-Criteria 
-
-T-BCSM-CAMEL-TDP-CriteriaList ::= SEQUENCE SIZE (1..maxNumOfCamelTDPData) OF
-	T-BCSM-CAMEL-TDP-Criteria 
-
-O-BcsmCamelTDP-Criteria ::= SEQUENCE {
-	o-BcsmTriggerDetectionPoint	O-BcsmTriggerDetectionPoint,	
-	destinationNumberCriteria 	[0] DestinationNumberCriteria	OPTIONAL,
-	basicServiceCriteria	[1] BasicServiceCriteria	OPTIONAL,
-	callTypeCriteria	[2] CallTypeCriteria	OPTIONAL,
-	...,
-	o-CauseValueCriteria	[3] O-CauseValueCriteria	OPTIONAL,
-	extensionContainer	[4] ExtensionContainer	OPTIONAL }
-
-T-BCSM-CAMEL-TDP-Criteria ::= SEQUENCE {
-	t-BCSM-TriggerDetectionPoint	T-BcsmTriggerDetectionPoint,	
-	basicServiceCriteria	[0] BasicServiceCriteria	OPTIONAL,
-	t-CauseValueCriteria	[1] T-CauseValueCriteria	OPTIONAL,
-	... }
-
-DestinationNumberCriteria  ::= SEQUENCE {
-	matchType		[0] MatchType,
-	destinationNumberList 	[1] DestinationNumberList	OPTIONAL,
-	destinationNumberLengthList	[2] DestinationNumberLengthList	OPTIONAL,
-	-- one or both of destinationNumberList and destinationNumberLengthList 
-	-- shall be present
-	...}
-
-DestinationNumberList  ::= SEQUENCE SIZE	(1..maxNumOfCamelDestinationNumbers) OF
-				ISDN-AddressString
-	-- The receiving entity shall not check the format of a number in
-	-- the dialled number list
-
-DestinationNumberLengthList  ::= SEQUENCE SIZE (1..maxNumOfCamelDestinationNumberLengths) OF 
-					INTEGER(1..maxNumOfISDN-AddressDigits)
-
-BasicServiceCriteria   ::= SEQUENCE SIZE(1..maxNumOfCamelBasicServiceCriteria) OF
-	Ext-BasicServiceCode
-
-maxNumOfISDN-AddressDigits  INTEGER ::= 15
-
-maxNumOfCamelDestinationNumbers  INTEGER ::= 10
-
-maxNumOfCamelDestinationNumberLengths  INTEGER ::= 3
-
-maxNumOfCamelBasicServiceCriteria  INTEGER ::= 5
-
-CallTypeCriteria       ::= ENUMERATED {
-	forwarded 	(0),
-	notForwarded	(1)}
-
-MatchType       ::= ENUMERATED {
-	inhibiting 	(0),
-	enabling		(1)}
-
-O-CauseValueCriteria   ::= SEQUENCE SIZE(1..maxNumOfCAMEL-O-CauseValueCriteria) OF
-	CauseValue
-
-T-CauseValueCriteria   ::= SEQUENCE SIZE(1..maxNumOfCAMEL-T-CauseValueCriteria) OF
-	CauseValue
-
-maxNumOfCAMEL-O-CauseValueCriteria  INTEGER ::= 5
-
-maxNumOfCAMEL-T-CauseValueCriteria  INTEGER ::= 5
-
-CauseValue ::= OCTET STRING (SIZE(1))
--- Type extracted from Cause parameter in ITU-T Recommendation Q.763.
--- For the use of cause value refer to ITU-T Recommendation Q.850.
-
-DefaultCallHandling ::= ENUMERATED {
-	continueCall (0) ,
-	releaseCall (1) ,
-	...}
-	-- exception handling:
-	-- reception of values in range 2-31 shall be treated as "continueCall"
-	-- reception of values greater than 31 shall be treated as "releaseCall"
-
-CamelCapabilityHandling ::= INTEGER(1..16) 
-	-- value 1 = CAMEL phase 1,
-	-- value 2 = CAMEL phase 2,
-	-- value 3 = CAMEL Phase 3,
-	-- value 4 = CAMEL phase 4:
-	-- reception of values greater than 4 shall be treated as CAMEL phase 4.
-
-SupportedCamelPhases ::= BIT STRING {
-	phase1 (0),
-	phase2 (1),
-	phase3 (2),
-	phase4 (3)} (SIZE (1..16)) 
--- A node shall mark in the BIT STRING all CAMEL Phases it supports.
--- Other values than listed above shall be discarded.
-
-OfferedCamel4CSIs ::= BIT STRING { 	
-	o-csi		(0),
-	d-csi		(1),
-	vt-csi		(2),
-	t-csi		(3),
-	mt-sms-csi	(4),
-	mg-csi		(5),
-	psi-enhancements	(6) 
-} (SIZE (7..16))
--- A node supporting Camel phase 4 shall mark in the BIT STRING all Camel4 CSIs 
--- it offers.
--- Other values than listed above shall be discarded.
-
-OfferedCamel4Functionalities ::= BIT STRING { 	
-	initiateCallAttempt	(0),
-	splitLeg		(1),
-	moveLeg		(2),
-	disconnectLeg	(3),
-	entityReleased	(4),
-	dfc-WithArgument	(5),
-	playTone		(6),
-	dtmf-MidCall	(7),
-	chargingIndicator	(8),
-	alertingDP	(9),
-	locationAtAlerting	(10),
-	changeOfPositionDP	(11),
-	or-Interactions	(12),
-	warningToneEnhancements	(13),
-	cf-Enhancements	(14),
-	subscribedEnhancedDialledServices 	(15),
-	servingNetworkEnhancedDialledServices (16),
-	criteriaForChangeOfPositionDP	(17),
-	serviceChangeDP	(18),
-	collectInformation	(19)
-} (SIZE (15..64))
--- A node supporting Camel phase 4 shall mark in the BIT STRING all CAMEL4 
--- functionalities it offers.
--- Other values than listed above shall be discarded.
-
-SMS-CSI ::= SEQUENCE {
-	sms-CAMEL-TDP-DataList	[0] SMS-CAMEL-TDP-DataList	OPTIONAL,
-	camelCapabilityHandling	[1] CamelCapabilityHandling	OPTIONAL,
-	extensionContainer	[2] ExtensionContainer	OPTIONAL,
-	notificationToCSE	[3] NULL		OPTIONAL,
-	csi-Active	[4] NULL		OPTIONAL,
-	...}
---	notificationToCSE and csi-Active shall not be present
---	when MO-SMS-CSI or MT-SMS-CSI is sent to VLR or SGSN.
---	They may only be included in ATSI/ATM ack/NSDC message.
---	SMS-CAMEL-TDP-Data and  camelCapabilityHandling shall be present in 
---	the SMS-CSI sequence.
---	If SMS-CSI is segmented, sms-CAMEL-TDP-DataList and camelCapabilityHandling shall be 
---	present in the first segment
-
-SMS-CAMEL-TDP-DataList ::= SEQUENCE SIZE (1..maxNumOfCamelTDPData) OF
-	SMS-CAMEL-TDP-Data
---	SMS-CAMEL-TDP-DataList shall not contain more than one instance of
---	SMS-CAMEL-TDP-Data containing the same value for sms-TriggerDetectionPoint.
-
-SMS-CAMEL-TDP-Data ::= SEQUENCE {
-	sms-TriggerDetectionPoint	[0] SMS-TriggerDetectionPoint,
-	serviceKey	[1] ServiceKey,
-	gsmSCF-Address	[2] ISDN-AddressString,
-	defaultSMS-Handling	[3] DefaultSMS-Handling,
-	extensionContainer	[4] ExtensionContainer	OPTIONAL,
-	...
-	}
-
-SMS-TriggerDetectionPoint ::= ENUMERATED {
-	sms-CollectedInfo (1),
-	...,
-	sms-DeliveryRequest (2)
-	}
---	exception handling:
---	For SMS-CAMEL-TDP-Data and MT-smsCAMELTDP-Criteria sequences containing this 
---	parameter with any other value than the ones listed the receiver shall ignore
---	the whole sequence.
---
---	If this parameter is received with any other value than sms-CollectedInfo
---	in an SMS-CAMEL-TDP-Data sequence contained in mo-sms-CSI, then the receiver shall
---	ignore the whole SMS-CAMEL-TDP-Data sequence.
---
---	If this parameter is received with any other value than sms-DeliveryRequest
---	in an SMS-CAMEL-TDP-Data sequence contained in mt-sms-CSI then the receiver shall
---	ignore the whole SMS-CAMEL-TDP-Data sequence.
---
---	If this parameter is received with any other value than sms-DeliveryRequest
---	in an MT-smsCAMELTDP-Criteria sequence then the receiver shall
---	ignore the whole MT-smsCAMELTDP-Criteria sequence.
-
-DefaultSMS-Handling ::= ENUMERATED {
-	continueTransaction (0) ,
-	releaseTransaction (1) ,
-	...}
---	exception handling:
---	reception of values in range 2-31 shall be treated as "continueTransaction"
---	reception of values greater than 31 shall be treated as "releaseTransaction"
-
-M-CSI ::= SEQUENCE {
-	mobilityTriggers	MobilityTriggers,
-	serviceKey	ServiceKey,
-	gsmSCF-Address	[0]	ISDN-AddressString,
-	extensionContainer	[1]	ExtensionContainer	OPTIONAL,
-	notificationToCSE	[2] NULL		OPTIONAL,
-	csi-Active	[3] NULL		OPTIONAL,
-	...}
---	notificationToCSE and csi-Active shall not be present when M-CSI is sent to VLR.
---	They may only be included in ATSI/ATM ack/NSDC message.
-
-MG-CSI ::= SEQUENCE {
-	mobilityTriggers	MobilityTriggers,
-	serviceKey	ServiceKey,
-	gsmSCF-Address	[0]	ISDN-AddressString,
-	extensionContainer	[1]	ExtensionContainer	OPTIONAL,
-	notificationToCSE	[2] NULL		OPTIONAL,
-	csi-Active	[3] NULL		OPTIONAL,
-	...}
---	notificationToCSE and csi-Active shall not be present when MG-CSI is sent to SGSN.
---	They may only be included in ATSI/ATM ack/NSDC message.
-
-MobilityTriggers  ::= SEQUENCE SIZE (1..maxNumOfMobilityTriggers) OF
-	MM-Code
-
-maxNumOfMobilityTriggers INTEGER ::= 10
-
-MM-Code ::= OCTET STRING (SIZE (1))
---	This type is used to indicate a Mobility Management event.
---	Actions for the following MM-Code values are defined in CAMEL Phase 4:
---
---	CS domain MM events:
---	Location-update-in-same-VLR	MM-Code ::= '00000000'B
---	Location-update-to-other-VLR	MM-Code ::= '00000001'B
---	IMSI-Attach	MM-Code ::= '00000010'B
---	MS-initiated-IMSI-Detach	MM-Code ::= '00000011'B
---	Network-initiated-IMSI-Detach	MM-Code ::= '00000100'B
---
---	PS domain MM events:
---	Routeing-Area-update-in-same-SGSN	MM-Code ::= '10000000'B
---	Routeing-Area-update-to-other-SGSN-update-from-new-SGSN
---				MM-Code ::= '10000001'B
---	Routeing-Area-update-to-other-SGSN-disconnect-by-detach
---				MM-Code ::= '10000010'B
---	GPRS-Attach	MM-Code ::= '10000011'B
---	MS-initiated-GPRS-Detach	MM-Code ::= '10000100'B
---	Network-initiated-GPRS-Detach	MM-Code ::= '10000101'B 
---	Network-initiated-transfer-to-MS-not-reachable-for-paging
---				MM-Code ::= '10000110'B
---
---	If the MSC receives any other MM-code than the ones listed above for the
---	CS domain, then the MSC shall ignore that MM-code.
---	If the SGSN receives any other MM-code than the ones listed above for the
---	PS domain, then the SGSN shall ignore that MM-code.
-
-T-CSI ::= SEQUENCE {
-	t-BcsmCamelTDPDataList	T-BcsmCamelTDPDataList,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...,
-	camelCapabilityHandling	[0] CamelCapabilityHandling	OPTIONAL,
-	notificationToCSE	[1] NULL		OPTIONAL,
-	csi-Active	[2] NULL		OPTIONAL}
---	notificationToCSE and csi-Active shall not be present when VT-CSI/T-CSI is sent
---	to VLR/GMSC.
---	They may only be included in ATSI/ATM ack/NSDC message.
---	T-CSI shall not be segmented.
-
-T-BcsmCamelTDPDataList ::= SEQUENCE SIZE (1..maxNumOfCamelTDPData) OF
-	T-BcsmCamelTDPData
-	--- T-BcsmCamelTDPDataList shall not contain more than one instance of
-	--- T-BcsmCamelTDPData containing the same value for t-BcsmTriggerDetectionPoint.
-	--- For CAMEL Phase 2, this means that only one instance of T-BcsmCamelTDPData is allowed
-	--- with t-BcsmTriggerDetectionPoint being equal to DP12. 
-	--- For CAMEL Phase 3, more TDPÂ’s are allowed.
-
-T-BcsmCamelTDPData ::= SEQUENCE {
-	t-BcsmTriggerDetectionPoint	T-BcsmTriggerDetectionPoint,
-	serviceKey	ServiceKey,
-	gsmSCF-Address	[0] ISDN-AddressString,
-	defaultCallHandling	[1] DefaultCallHandling,
-	extensionContainer	[2] ExtensionContainer	OPTIONAL,
-	...}
-
-T-BcsmTriggerDetectionPoint ::= ENUMERATED {
-	termAttemptAuthorized (12),
-	... ,
-	tBusy (13),
-	tNoAnswer (14)}
-	-- exception handling:
-	-- For T-BcsmCamelTDPData sequences containing this parameter with any other
-	-- value than the ones listed above, the receiver shall ignore the whole
-	-- T-BcsmCamelTDPData sequence.
-
--- gprs location information retrieval types
-
-SendRoutingInfoForGprsArg ::= SEQUENCE {
-	imsi				[0] IMSI,
-	ggsn-Address		[1] GSN-Address	OPTIONAL, 
-	ggsn-Number		[2]	ISDN-AddressString,
-	extensionContainer		[3] ExtensionContainer	OPTIONAL,
-	...}
-
-SendRoutingInfoForGprsRes ::= SEQUENCE {
-	sgsn-Address		[0] GSN-Address,
-	ggsn-Address		[1]	GSN-Address	OPTIONAL,
-	mobileNotReachableReason		[2]	AbsentSubscriberDiagnosticSM		OPTIONAL,
-	extensionContainer		[3] ExtensionContainer	OPTIONAL,
-	...}
-
--- failure report types
-
-FailureReportArg ::= SEQUENCE {
-	imsi				[0] IMSI,
-	ggsn-Number		[1] ISDN-AddressString	,
-	ggsn-Address		[2] GSN-Address	OPTIONAL,
-	extensionContainer		[3] ExtensionContainer	OPTIONAL,
-	...}
-
-FailureReportRes ::= SEQUENCE {
-	ggsn-Address		[0] GSN-Address	OPTIONAL,
-	extensionContainer		[1] ExtensionContainer	OPTIONAL,
-	...}
-
--- gprs notification types
-
-NoteMsPresentForGprsArg ::= SEQUENCE {
-	imsi				[0] IMSI,
-	sgsn-Address		[1] GSN-Address,
-	ggsn-Address		[2] GSN-Address	OPTIONAL,
-	extensionContainer		[3] ExtensionContainer	OPTIONAL,
-	...}
-
-NoteMsPresentForGprsRes ::= SEQUENCE {
-	extensionContainer		[0] ExtensionContainer	OPTIONAL,
-	...}
-
--- fault recovery types
-
-ResetArg ::= SEQUENCE {
-	hlr-Number	ISDN-AddressString,
-	hlr-List		HLR-List		OPTIONAL,
-	...}
-
-RestoreDataArg ::= SEQUENCE {
-	imsi			IMSI,
-	lmsi			LMSI			OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	... ,
-	vlr-Capability	[6] VLR-Capability	OPTIONAL }
-
-RestoreDataRes ::= SEQUENCE {
-	hlr-Number	ISDN-AddressString,
-	msNotReachable	NULL			OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
--- VBS/VGCS types
-VBSDataList ::= SEQUENCE SIZE (1..maxNumOfVBSGroupIds) OF
-				VoiceBroadcastData
-
-VGCSDataList ::= SEQUENCE SIZE (1..maxNumOfVGCSGroupIds) OF
-				VoiceGroupCallData
-
-maxNumOfVBSGroupIds  INTEGER ::= 50
-
-maxNumOfVGCSGroupIds  INTEGER ::= 50
-
-VoiceGroupCallData  ::= SEQUENCE {
-	groupId		GroupId, 
-	-- groupId shall be filled with six TBCD fillers (1111)if the longGroupId is present  
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...,
-	additionalSubscriptions	AdditionalSubscriptions	OPTIONAL,
-	additionalInfo	[0] AdditionalInfo	OPTIONAL,
-	longGroupId	[1] Long-GroupId	OPTIONAL }
-
-	-- VoiceGroupCallData containing a longGroupId shall not be sent to VLRs that did not
-	-- indicate support of long Group IDs within the Update Location or Restore Data 
-	-- request message
-
-AdditionalInfo ::= BIT STRING (SIZE (1..136))
---	 Refers to Additional Info as specified in 3GPP TS 43.068 
-
-AdditionalSubscriptions ::= BIT STRING {
-	privilegedUplinkRequest (0),
-	emergencyUplinkRequest (1),
-	emergencyReset (2)} (SIZE (3..8))
--- Other bits than listed above shall be discarded.
-
-VoiceBroadcastData ::= SEQUENCE {
-	groupid		GroupId, 
-	-- groupId shall be filled with six TBCD fillers (1111)if the longGroupId is present
-	broadcastInitEntitlement	NULL			OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...,
-	longGroupId	[0] Long-GroupId	OPTIONAL }
-	
--- VoiceBroadcastData containing a longGroupId shall not be sent to VLRs that did not
--- indicate support of long Group IDs within the Update Location or Restore Data 
-	-- request message
-
-GroupId  ::= TBCD-STRING (SIZE (3))
-	-- When Group-Id is less than six characters in length, the TBCD filler (1111)
-	-- is used to fill unused half octets.
-	-- Refers to the Group Identification as specified in 3GPP TS 23.003 
-	-- and 3GPP TS 43.068/ 43.069
-
-Long-GroupId  ::= TBCD-STRING (SIZE (4))
-	-- When Long-Group-Id is less than eight characters in length, the TBCD filler (1111)
-	-- is used to fill unused half octets.
-	-- Refers to the Group Identification as specified in 3GPP TS 23.003 
-	-- and 3GPP TS 43.068/ 43.069
-
-
--- provide subscriber info types
-
-ProvideSubscriberInfoArg ::= SEQUENCE {
-	imsi		[0] IMSI,
-	lmsi		[1] LMSI	OPTIONAL,
-	requestedInfo	[2] RequestedInfo,
-	extensionContainer	[3] ExtensionContainer	OPTIONAL,
-	...,
-	callPriority	[4]	EMLPP-Priority	OPTIONAL
-	}
-
-ProvideSubscriberInfoRes ::= SEQUENCE {
-	subscriberInfo	SubscriberInfo,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-SubscriberInfo ::= SEQUENCE {
-	locationInformation	[0] LocationInformation	OPTIONAL,
-	subscriberState	[1] SubscriberState	OPTIONAL,
-	extensionContainer	[2] ExtensionContainer	OPTIONAL,
-	... ,
-	locationInformationGPRS	[3] LocationInformationGPRS	OPTIONAL,
-	ps-SubscriberState	[4] PS-SubscriberState	OPTIONAL,
-	imei			[5] IMEI		OPTIONAL,
-	ms-Classmark2	[6] MS-Classmark2	OPTIONAL,
-	gprs-MS-Class	[7] GPRSMSClass	OPTIONAL,
-	mnpInfoRes	[8] MNPInfoRes	OPTIONAL }
-
---	If the HLR receives locationInformation, subscriberState or ms-Classmark2 from an SGSN
---	it shall discard them.
---	If the HLR receives locationInformationGPRS, ps-SubscriberState or gprs-MS-Class from
---	a VLR it shall discard them.
---	If the HLR receives parameters which it has not requested, it shall discard them.
-
-MNPInfoRes ::= SEQUENCE {
-	routeingNumber	[0] RouteingNumber 	OPTIONAL,
-	imsi			[1] IMSI		OPTIONAL,
-	msisdn		[2] ISDN-AddressString 	OPTIONAL,
-	numberPortabilityStatus	[3] NumberPortabilityStatus	OPTIONAL,
-	extensionContainer	[4] ExtensionContainer	OPTIONAL,
-	... }
---	The IMSI parameter contains a generic IMSI, i.e. it is not tied necessarily to the 
---	Subscriber. MCC and MNC values in this IMSI shall point to the Subscription Network of 
---	the Subscriber. See 3GPP TS 23.066 [108].
-
-RouteingNumber ::= TBCD-STRING (SIZE (1..5))
-
-
-NumberPortabilityStatus ::= ENUMERATED {
-	notKnownToBePorted	(0),
-	ownNumberPortedOut	(1),
-	foreignNumberPortedToForeignNetwork	(2),
-	...,
-	ownNumberNotPortedOut	(4),
-	foreignNumberPortedIn	(5)
-	}
-	--	exception handling: 
-	--  reception of other values than the ones listed the receiver shall ignore the 
-	--  whole NumberPortabilityStatus;
-	--  ownNumberNotPortedOut or foreignNumberPortedIn may only be included in Any Time 
-	--  Interrogation message.
-
-MS-Classmark2 ::= OCTET STRING (SIZE (3))
-	-- This parameter carries the value part of the MS Classmark 2 IE defined in 
-	-- 3GPP TS 24.008 [35].
-
-GPRSMSClass ::= SEQUENCE {
-	mSNetworkCapability	[0] MSNetworkCapability,
-	mSRadioAccessCapability	[1] MSRadioAccessCapability	OPTIONAL
-	}
-
-MSNetworkCapability ::= OCTET STRING (SIZE (1..8))
-	-- This parameter carries the value part of the MS Network Capability IE defined in 
-	-- 3GPP TS 24.008 [35].
-	
-MSRadioAccessCapability ::= OCTET STRING (SIZE (1..50))
-	-- This parameter carries the value part of the MS Radio Access Capability IE defined in
-	-- 3GPP TS 24.008 [35].
-
-RequestedInfo ::= SEQUENCE {
-	locationInformation	[0] NULL		OPTIONAL,
-	subscriberState	[1] NULL		OPTIONAL,
-	extensionContainer	[2] ExtensionContainer	OPTIONAL,
-	..., 
-	currentLocation	[3] NULL		OPTIONAL,
-	requestedDomain	[4] DomainType	OPTIONAL,
-	imei			[6] NULL		OPTIONAL,
-	ms-classmark	[5] NULL		OPTIONAL,
-	mnpRequestedInfo	[7] NULL 		OPTIONAL }
-
---	currentLocation shall be absent if locationInformation is absent
-
-DomainType ::=  ENUMERATED {
-	cs-Domain		(0),
-	ps-Domain		(1),
-	...}
--- exception handling:
--- reception of values > 1 shall be mapped to 'cs-Domain'
-
-LocationInformation ::= SEQUENCE {
-	ageOfLocationInformation	AgeOfLocationInformation	OPTIONAL,
-	geographicalInformation	[0] GeographicalInformation	OPTIONAL,
-	vlr-number	[1] ISDN-AddressString	OPTIONAL,
-	locationNumber	[2] LocationNumber	OPTIONAL,
-	cellGlobalIdOrServiceAreaIdOrLAI	[3] CellGlobalIdOrServiceAreaIdOrLAI	OPTIONAL,
-	extensionContainer	[4] ExtensionContainer	OPTIONAL,
-	... ,
-	selectedLSA-Id	[5] LSAIdentity	OPTIONAL,
-	msc-Number	[6] ISDN-AddressString	OPTIONAL,
-	geodeticInformation	[7] GeodeticInformation	OPTIONAL, 
-	currentLocationRetrieved	[8] NULL		OPTIONAL,
-	sai-Present	[9] NULL		OPTIONAL }
--- sai-Present indicates that the cellGlobalIdOrServiceAreaIdOrLAI parameter contains
--- a Service Area Identity.
--- currentLocationRetrieved shall be present 
--- if the location information were retrieved after a successfull paging.
-
-LocationInformationGPRS ::= SEQUENCE {
-	cellGlobalIdOrServiceAreaIdOrLAI	[0] CellGlobalIdOrServiceAreaIdOrLAI OPTIONAL,
-	routeingAreaIdentity	[1] RAIdentity	OPTIONAL,
-	geographicalInformation	[2] GeographicalInformation	OPTIONAL,
-	sgsn-Number	[3] ISDN-AddressString	OPTIONAL,
-	selectedLSAIdentity	[4] LSAIdentity	OPTIONAL,
-	extensionContainer	[5] ExtensionContainer	OPTIONAL,
-	...,
-	sai-Present	[6] NULL		OPTIONAL,
-	geodeticInformation	[7] GeodeticInformation	OPTIONAL,
-	currentLocationRetrieved	[8] NULL		OPTIONAL,
-	ageOfLocationInformation	[9] AgeOfLocationInformation	OPTIONAL }
--- sai-Present indicates that the cellGlobalIdOrServiceAreaIdOrLAI parameter contains
--- a Service Area Identity.
--- currentLocationRetrieved shall be present if the location information
--- was retrieved after successful paging.
-
-RAIdentity ::= OCTET STRING (SIZE (6))
--- Routing Area Identity is coded in accordance with 3GPP TS 29.060 [105].
--- It shall contain the value part defined in 3GPP TS 29.060 only. I.e. the 3GPP TS 29.060
--- type identifier octet shall not be included.
-
-
-GeographicalInformation ::= OCTET STRING (SIZE (8))
---	Refers to geographical Information defined in 3GPP TS 23.032.
---	Only the description of an ellipsoid point with uncertainty circle
---	as specified in 3GPP TS 23.032 is allowed to be used
---	The internal structure according to 3GPP TS 23.032 is as follows:
---		Type of shape (ellipsoid point with uncertainty circle)	1 octet
---		Degrees of Latitude				3 octets
---		Degrees of Longitude				3 octets
---		Uncertainty code				1 octet
-
-GeodeticInformation ::= OCTET STRING (SIZE (10))
---	Refers to Calling Geodetic Location defined in Q.763 (1999).
---	Only the description of an ellipsoid point with uncertainty circle
---	as specified in Q.763 (1999) is allowed to be used
---	The internal structure according to Q.763 (1999) is as follows:
---		Screening and presentation indicators		1 octet
---		Type of shape (ellipsoid point with uncertainty circle)	1 octet
---		Degrees of Latitude				3 octets
---		Degrees of Longitude				3 octets
---		Uncertainty code				1 octet
---		Confidence				1 octet
-
-LocationNumber ::= OCTET STRING (SIZE (2..10))
-	-- the internal structure is defined in ITU-T Rec Q.763
-
-SubscriberState ::= CHOICE {
-	assumedIdle	[0] NULL,
-	camelBusy		[1] NULL,
-	netDetNotReachable	NotReachableReason,
-	notProvidedFromVLR	[2] NULL}
-
-PS-SubscriberState ::= CHOICE {
-	notProvidedFromSGSN	[0] NULL,
-	ps-Detached	[1] NULL,
-	ps-AttachedNotReachableForPaging	[2] NULL,
-	ps-AttachedReachableForPaging	[3] NULL,
-	ps-PDP-ActiveNotReachableForPaging	[4] PDP-ContextInfoList,
-	ps-PDP-ActiveReachableForPaging	[5] PDP-ContextInfoList,
-	netDetNotReachable	NotReachableReason }
-
-PDP-ContextInfoList ::= SEQUENCE SIZE (1..maxNumOfPDP-Contexts) OF
-				PDP-ContextInfo
-
-PDP-ContextInfo ::= SEQUENCE {
-	pdp-ContextIdentifier	[0] ContextId,
-	pdp-ContextActive	[1] NULL		OPTIONAL,
-	pdp-Type		[2] PDP-Type,
-	pdp-Address	[3] PDP-Address	OPTIONAL,
-	apn-Subscribed	[4] APN		OPTIONAL,
-	apn-InUse		[5] APN		OPTIONAL,
-	nsapi		[6] NSAPI		OPTIONAL,
-	transactionId	[7] TransactionId	OPTIONAL,
-	teid-ForGnAndGp	[8] TEID		OPTIONAL,
-	teid-ForIu	[9] TEID		OPTIONAL,
-	ggsn-Address	[10] GSN-Address 	OPTIONAL,
-	qos-Subscribed	[11] Ext-QoS-Subscribed	OPTIONAL,
-	qos-Requested	[12] Ext-QoS-Subscribed	OPTIONAL,
-	qos-Negotiated	[13] Ext-QoS-Subscribed	OPTIONAL,
-	chargingId	[14] GPRSChargingID	OPTIONAL,
-	chargingCharacteristics	[15] ChargingCharacteristics	OPTIONAL,
-	rnc-Address	[16] GSN-Address	OPTIONAL,
-	extensionContainer	[17] ExtensionContainer	OPTIONAL,
-	...,
-	qos2-Subscribed	[18] Ext2-QoS-Subscribed	OPTIONAL,
-	-- qos2-Subscribed may be present only if qos-Subscribed is present.
-	qos2-Requested	[19] Ext2-QoS-Subscribed	OPTIONAL,
-	-- qos2-Requested may be present only if qos-Requested is present.
-	qos2-Negotiated	[20] Ext2-QoS-Subscribed	OPTIONAL,
-	-- qos2-Negotiated may be present only if qos-Negotiated is present.
-		qos3-Subscribed	[21] Ext3-QoS-Subscribed	OPTIONAL,
-	-- qos3-Subscribed may be present only if qos2-Subscribed is present.
-	qos3-Requested	[22] Ext3-QoS-Subscribed	OPTIONAL,
-	-- qos3-Requested may be present only if qos2-Requested is present.
-	qos3-Negotiated	[23] Ext3-QoS-Subscribed	OPTIONAL
-	-- qos3-Negotiated may be present only if qos2-Negotiated is present.
-}
-
-NSAPI ::= INTEGER (0..15)
---	This type is used to indicate the Network layer Service Access Point
-
-TransactionId ::= OCTET STRING (SIZE (1..2))
---	This type carries the value part of the transaction identifier which is used in the 
---	session management messages on the access interface. The encoding is defined in 
---	3GPP TS 24.008
-
-TEID ::= OCTET STRING (SIZE (4))
---	This type carries the value part of the Tunnel Endpoint Identifier which is used to 
---	distinguish between different tunnels between the same pair of entities which communicate 
---	using the GPRS Tunnelling Protocol The encoding is defined in 3GPP TS 29.060.
-
-GPRSChargingID ::= OCTET STRING (SIZE (4))
---	The Charging ID is a unique four octet value generated by the GGSN when 
---	a PDP Context is activated. A Charging ID is generated for each activated context.
---	The encoding is defined in 3GPP TS 29.060.
-
-NotReachableReason ::= ENUMERATED {
-	msPurged (0),
-	imsiDetached (1),
-	restrictedArea (2),
-	notRegistered (3)}
-
--- any time interrogation info types
-
-AnyTimeInterrogationArg ::= SEQUENCE {
-	subscriberIdentity	[0] SubscriberIdentity,
-	requestedInfo	[1] RequestedInfo,
-	gsmSCF-Address	[3] ISDN-AddressString,
-	extensionContainer	[2] ExtensionContainer	OPTIONAL,
-	...}
-
-AnyTimeInterrogationRes ::= SEQUENCE {
-	subscriberInfo	SubscriberInfo,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
--- any time information handling types
-
-AnyTimeSubscriptionInterrogationArg ::= SEQUENCE {
-	subscriberIdentity	[0] SubscriberIdentity,
-	requestedSubscriptionInfo	[1] RequestedSubscriptionInfo,
-	gsmSCF-Address	[2] ISDN-AddressString,
-	extensionContainer	[3] ExtensionContainer	OPTIONAL,
-	longFTN-Supported	[4]	NULL		OPTIONAL,
-	...}
-
-AnyTimeSubscriptionInterrogationRes ::= SEQUENCE {
-	callForwardingData	[1] CallForwardingData	OPTIONAL,
-	callBarringData	[2] CallBarringData	OPTIONAL,
-	odb-Info		[3] ODB-Info	OPTIONAL,
-	camel-SubscriptionInfo	[4] CAMEL-SubscriptionInfo	OPTIONAL,
-	supportedVLR-CAMEL-Phases	[5] SupportedCamelPhases	OPTIONAL,
-	supportedSGSN-CAMEL-Phases	[6] SupportedCamelPhases	OPTIONAL,
-	extensionContainer	[7] ExtensionContainer	OPTIONAL,
-	... ,
-	offeredCamel4CSIsInVLR	[8] OfferedCamel4CSIs	OPTIONAL,
-	offeredCamel4CSIsInSGSN	[9] OfferedCamel4CSIs	OPTIONAL,
-	msisdn-BS-List	[10] MSISDN-BS-List	OPTIONAL }
-
-RequestedSubscriptionInfo ::= SEQUENCE {
-	requestedSS-Info	[1] SS-ForBS-Code	OPTIONAL,
-	odb			[2] NULL		OPTIONAL,
-	requestedCAMEL-SubscriptionInfo	[3] RequestedCAMEL-SubscriptionInfo		OPTIONAL,
-	supportedVLR-CAMEL-Phases	[4] NULL		OPTIONAL,
-	supportedSGSN-CAMEL-Phases	[5] NULL		OPTIONAL,
-	extensionContainer	[6] ExtensionContainer	OPTIONAL,
-	...,
-	additionalRequestedCAMEL-SubscriptionInfo
-				[7] AdditionalRequestedCAMEL-SubscriptionInfo
-							OPTIONAL,
-	msisdn-BS-List	[8] NULL		OPTIONAL }
-
-MSISDN-BS-List ::= SEQUENCE SIZE (1..maxNumOfMSISDN) OF
-				MSISDN-BS
-
-maxNumOfMSISDN  INTEGER ::= 50
-
-
-MSISDN-BS ::= SEQUENCE {
-	msisdn			ISDN-AddressString,	
-	basicServiceList	[0]	BasicServiceList	OPTIONAL,
-	extensionContainer	[1]	ExtensionContainer	OPTIONAL,
-	...}
-
-RequestedCAMEL-SubscriptionInfo ::= ENUMERATED {
-	o-CSI		(0),
-	t-CSI		(1),
-	vt-CSI		(2),
-	tif-CSI		(3),
-	gprs-CSI		(4),
-	mo-sms-CSI	(5),
-	ss-CSI		(6),
-	m-CSI		(7),
-	d-csi		(8)}
-
-AdditionalRequestedCAMEL-SubscriptionInfo ::= ENUMERATED {
-	mt-sms-CSI	(0),
-	mg-csi		(1),
-	o-IM-CSI 		(2),
-	d-IM-CSI		(3),
-	vt-IM-CSI	 	(4),
-	...}
---	exception handling: unknown values shall be discarded by the receiver.
-
-CallForwardingData ::= SEQUENCE {
-	forwardingFeatureList	Ext-ForwFeatureList,
-	notificationToCSE	NULL			OPTIONAL,
-	extensionContainer	[0] ExtensionContainer	OPTIONAL,
-	...}
-
-CallBarringData ::= SEQUENCE {
-	callBarringFeatureList	Ext-CallBarFeatureList,
-	password		Password		OPTIONAL,
-	wrongPasswordAttemptsCounter	WrongPasswordAttemptsCounter	OPTIONAL,
-	notificationToCSE	NULL			OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-WrongPasswordAttemptsCounter ::= INTEGER (0..4)
-
-ODB-Info ::= SEQUENCE {
-	odb-Data		ODB-Data,
-	notificationToCSE	NULL			OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-CAMEL-SubscriptionInfo ::= SEQUENCE {
-	o-CSI		[0]	O-CSI	OPTIONAL,
-	o-BcsmCamelTDP-CriteriaList	[1]	O-BcsmCamelTDPCriteriaList	OPTIONAL, 
-	d-CSI		[2]	D-CSI	OPTIONAL,
-	t-CSI		[3]	T-CSI	OPTIONAL,
-	t-BCSM-CAMEL-TDP-CriteriaList	[4]	T-BCSM-CAMEL-TDP-CriteriaList	OPTIONAL,
-	vt-CSI		[5]	T-CSI	OPTIONAL,
-	vt-BCSM-CAMEL-TDP-CriteriaList	[6]	T-BCSM-CAMEL-TDP-CriteriaList	OPTIONAL,
-	tif-CSI		[7]	NULL		OPTIONAL,
-	tif-CSI-NotificationToCSE	[8]	NULL		OPTIONAL,
-	gprs-CSI		[9]	GPRS-CSI	OPTIONAL,
-	mo-sms-CSI	[10]	SMS-CSI	OPTIONAL,
-	ss-CSI		[11]	SS-CSI	OPTIONAL,
-	m-CSI		[12]	M-CSI	OPTIONAL,
-	extensionContainer	[13]	ExtensionContainer	OPTIONAL,
-	...,
-	specificCSIDeletedList	[14]	SpecificCSI-Withdraw	OPTIONAL,
-	mt-sms-CSI	[15]	SMS-CSI	OPTIONAL,
-	mt-smsCAMELTDP-CriteriaList	[16]	MT-smsCAMELTDP-CriteriaList	OPTIONAL,
-	mg-csi		[17]	MG-CSI	OPTIONAL,
-	o-IM-CSI		[18] O-CSI	OPTIONAL,
-	o-IM-BcsmCamelTDP-CriteriaList	[19] O-BcsmCamelTDPCriteriaList	OPTIONAL,
-	d-IM-CSI		[20] D-CSI	OPTIONAL,
-	vt-IM-CSI		[21] T-CSI	OPTIONAL,
-	vt-IM-BCSM-CAMEL-TDP-CriteriaList	[22]	T-BCSM-CAMEL-TDP-CriteriaList	OPTIONAL
-	}
-
-AnyTimeModificationArg ::= SEQUENCE {
-	subscriberIdentity	[0]	SubscriberIdentity,
-	gsmSCF-Address	[1]	ISDN-AddressString,
-	modificationRequestFor-CF-Info	[2]	ModificationRequestFor-CF-Info OPTIONAL,
-	modificationRequestFor-CB-Info	[3]	ModificationRequestFor-CB-Info OPTIONAL,
-	modificationRequestFor-CSI	[4]	ModificationRequestFor-CSI	OPTIONAL,
-	extensionContainer	[5]	ExtensionContainer	OPTIONAL,
-	longFTN-Supported	[6]	NULL		OPTIONAL,
-	...,
-	modificationRequestFor-ODB-data	[7]	ModificationRequestFor-ODB-data OPTIONAL,
-	modificationRequestFor-IP-SM-GW-Data	[8]	ModificationRequestFor-IP-SM-GW-Data OPTIONAL }
-
-AnyTimeModificationRes ::= SEQUENCE {
-	ss-InfoFor-CSE	[0]	Ext-SS-InfoFor-CSE	OPTIONAL,
-	camel-SubscriptionInfo	[1]	CAMEL-SubscriptionInfo	OPTIONAL,
-	extensionContainer	[2]	ExtensionContainer	OPTIONAL,
-	...,
-	odb-Info		[3]	ODB-Info	OPTIONAL }
-
-ModificationRequestFor-CF-Info ::= SEQUENCE {
-	ss-Code		[0]	SS-Code,
-	basicService	[1]	Ext-BasicServiceCode	OPTIONAL,
-	ss-Status		[2]	Ext-SS-Status	OPTIONAL,
-	forwardedToNumber	[3]	AddressString	OPTIONAL,
-	forwardedToSubaddress	[4]	ISDN-SubaddressString	OPTIONAL,
-	noReplyConditionTime	[5]	Ext-NoRepCondTime	OPTIONAL,
-	modifyNotificationToCSE	[6]	ModificationInstruction	OPTIONAL,
-	extensionContainer	[7]	ExtensionContainer	OPTIONAL,
-	...}
-
-ModificationRequestFor-CB-Info ::= SEQUENCE {
-	ss-Code		[0]	SS-Code,
-	basicService	[1]	Ext-BasicServiceCode	OPTIONAL,
-	ss-Status		[2]	Ext-SS-Status	OPTIONAL,
-	password		[3]	Password	OPTIONAL,
-	wrongPasswordAttemptsCounter	[4]	WrongPasswordAttemptsCounter	OPTIONAL,
-	modifyNotificationToCSE	[5]	ModificationInstruction	OPTIONAL,
-	extensionContainer	[6]	ExtensionContainer	OPTIONAL,
-	...}
-
-ModificationRequestFor-ODB-data ::= SEQUENCE {
-	odb-data		[0]	ODB-Data	OPTIONAL,
-	modifyNotificationToCSE	[1]	ModificationInstruction	OPTIONAL,
-	extensionContainer	[2]	ExtensionContainer	OPTIONAL,
-	...}
-
-ModificationRequestFor-CSI ::= SEQUENCE {
-	requestedCamel-SubscriptionInfo	[0]	RequestedCAMEL-SubscriptionInfo,
-	modifyNotificationToCSE	[1]	ModificationInstruction	OPTIONAL,
-	modifyCSI-State	[2]	ModificationInstruction	OPTIONAL,
-	extensionContainer	[3]	ExtensionContainer	OPTIONAL,
-	...,
-	additionalRequestedCAMEL-SubscriptionInfo
-				[4] AdditionalRequestedCAMEL-SubscriptionInfo
-							OPTIONAL }
--- requestedCamel-SubscriptionInfo shall be discarded if
--- additionalRequestedCAMEL-SubscriptionInfo is received
-
-ModificationRequestFor-IP-SM-GW-Data ::= SEQUENCE {
-	modifyRegistrationStatus	[0]	ModificationInstruction	OPTIONAL,
-	extensionContainer	[1]	ExtensionContainer	OPTIONAL,
-	...}
-
-ModificationInstruction ::= ENUMERATED {
-	deactivate	(0),
-	activate		(1)}
-
--- subscriber data modification notification types
-
-NoteSubscriberDataModifiedArg ::= SEQUENCE {
-	imsi			IMSI,
-	msisdn		ISDN-AddressString,
-	forwardingInfoFor-CSE	[0] Ext-ForwardingInfoFor-CSE	OPTIONAL,
-	callBarringInfoFor-CSE	[1] Ext-CallBarringInfoFor-CSE	OPTIONAL,
-	odb-Info		[2] ODB-Info	OPTIONAL,
-	camel-SubscriptionInfo	[3] CAMEL-SubscriptionInfo	OPTIONAL,
-	allInformationSent	[4] NULL		OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-NoteSubscriberDataModifiedRes ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
--- mobility management event notificatioon info types
-
-NoteMM-EventArg::= SEQUENCE {
-	serviceKey	ServiceKey,
-	eventMet		[0]	MM-Code,
-	imsi			[1]	IMSI,
-	msisdn		[2]	ISDN-AddressString,
-	locationInformation	[3]	LocationInformation	OPTIONAL,
-	supportedCAMELPhases	[5]	SupportedCamelPhases	OPTIONAL,
-	extensionContainer	[6]	ExtensionContainer	OPTIONAL,
-	...,
-	locationInformationGPRS	[7]	LocationInformationGPRS	OPTIONAL,
-	offeredCamel4Functionalities	[8] OfferedCamel4Functionalities	OPTIONAL
-}
-
-NoteMM-EventRes ::= SEQUENCE {
-	extensionContainer	ExtensionContainer 	OPTIONAL,
-	...}
-
-Ext-SS-InfoFor-CSE ::= CHOICE {
-	forwardingInfoFor-CSE	[0] Ext-ForwardingInfoFor-CSE,
-	callBarringInfoFor-CSE	[1] Ext-CallBarringInfoFor-CSE
-	}
-
-Ext-ForwardingInfoFor-CSE ::= SEQUENCE {
-	ss-Code		[0]	SS-Code,
-	forwardingFeatureList	[1]	Ext-ForwFeatureList,
-	notificationToCSE	[2]	NULL		OPTIONAL,
-	extensionContainer	[3]	ExtensionContainer	OPTIONAL,
-	...}
-
-Ext-CallBarringInfoFor-CSE ::= SEQUENCE {
-	ss-Code		[0]	SS-Code,
-	callBarringFeatureList	[1]	Ext-CallBarFeatureList,
-	password		[2]	Password	OPTIONAL,
-	wrongPasswordAttemptsCounter	[3]	WrongPasswordAttemptsCounter	OPTIONAL,
-	notificationToCSE	[4]	NULL		OPTIONAL,
-	extensionContainer	[5]	ExtensionContainer 	OPTIONAL,
-	...}
-
-END
-
diff --git a/rrlp-ephemeris/asn1/MAP-OM-DataTypes.asn b/rrlp-ephemeris/asn1/MAP-OM-DataTypes.asn
deleted file mode 100644
index 024dd6f..0000000
--- a/rrlp-ephemeris/asn1/MAP-OM-DataTypes.asn
+++ /dev/null
@@ -1,216 +0,0 @@
--- $Id: MAP-OM-DataTypes.asn 28149 2009-04-25 17:45:34Z etxrab $
--- 17.7.2	Operation and maintenance data types
--- 3GPP TS 29.002 V8.9.0 (2009-04)
- 
-MAP-OM-DataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-OM-DataTypes (12) version11 (11)}
-
-DEFINITIONS
-
-IMPLICIT TAGS
-
-::=
-
-BEGIN
-
-EXPORTS
-	ActivateTraceModeArg,
-	ActivateTraceModeRes,
-	DeactivateTraceModeArg,
-	DeactivateTraceModeRes,
-	TracePropagationList
-;
-
-IMPORTS
-	AddressString,
-	IMSI
-FROM MAP-CommonDataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-CommonDataTypes (18) version11 (11)}
-
-	ExtensionContainer
-FROM MAP-ExtensionDataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-ExtensionDataTypes (21) version11 (11)}
-
-;
-
-ActivateTraceModeArg ::= SEQUENCE {
-	imsi			[0] IMSI		OPTIONAL,
-	traceReference	[1] TraceReference,
-	traceType		[2] TraceType,
-	omc-Id		[3] AddressString	OPTIONAL,
-	extensionContainer	[4] ExtensionContainer	OPTIONAL,
-	...,
-	traceReference2	[5] TraceReference2	OPTIONAL,
-	traceDepthList	[6] TraceDepthList	OPTIONAL,
-	traceNE-TypeList	[7] TraceNE-TypeList	OPTIONAL,
-	traceInterfaceList	[8] TraceInterfaceList	OPTIONAL,
-	traceEventList	[9] TraceEventList	OPTIONAL
-	}
-
-TraceReference ::= OCTET STRING (SIZE (1..2))
-
-TraceReference2 ::= OCTET STRING (SIZE (3))
-
-TraceRecordingSessionReference ::= OCTET STRING (SIZE (2))
-
-TraceType ::= INTEGER
-	(0..255)
-	-- Trace types are fully defined in  3GPP TS 52.008. [61]
-
-TraceDepthList ::= SEQUENCE {
-	msc-s-TraceDepth	[0] TraceDepth	OPTIONAL,
-	mgw-TraceDepth	[1] TraceDepth	OPTIONAL,
-	sgsn-TraceDepth	[2] TraceDepth	OPTIONAL,
-	ggsn-TraceDepth	[3] TraceDepth	OPTIONAL,
-	rnc-TraceDepth	[4] TraceDepth	OPTIONAL,
-	bmsc-TraceDepth	[5] TraceDepth	OPTIONAL,
-	...}
-
-TraceDepth ::= ENUMERATED {
-	minimum (0),
-	medium (1),
-	maximum (2),
-	...}
--- The value medium is applicable only for RNC. For other network elements, if value medium
--- is received, value minimum shall be applied.
-
-TraceNE-TypeList ::= BIT STRING {
-	msc-s (0),
-	mgw (1),
-	sgsn (2),
-	ggsn (3),
-	rnc (4),
-	bm-sc (5)} (SIZE (6..16))
--- Other bits than listed above shall be discarded.
-
-TraceInterfaceList ::= SEQUENCE {
-	msc-s-List	[0] MSC-S-InterfaceList	OPTIONAL,
-	mgw-List		[1] MGW-InterfaceList	OPTIONAL,
-	sgsn-List		[2] SGSN-InterfaceList	OPTIONAL,
-	ggsn-List		[3] GGSN-InterfaceList	OPTIONAL,
-	rnc-List		[4] RNC-InterfaceList	OPTIONAL,
-	bmsc-List		[5] BMSC-InterfaceList	OPTIONAL,
-	...}
-
-MSC-S-InterfaceList ::= BIT STRING {
-	a (0),
-	iu (1),
-	mc (2),
-	map-g (3),
-	map-b (4),
-	map-e (5),
-	map-f (6),
-	cap (7),
-	map-d (8),
-	map-c (9)} (SIZE (10..16))
--- Other bits than listed above shall be discarded.
-
-MGW-InterfaceList ::= BIT STRING {
-	mc (0),
-	nb-up (1),
-	iu-up (2)} (SIZE (3..8))
--- Other bits than listed above shall be discarded.
-
-SGSN-InterfaceList ::= BIT STRING {
-	gb (0),
-	iu (1),
-	gn (2),
-	map-gr (3),
-	map-gd (4),
-	map-gf (5),
-	gs (6),
-	ge (7)} (SIZE (8..16))
--- Other bits than listed above shall be discarded.
-
-GGSN-InterfaceList ::= BIT STRING {
-	gn (0),
-	gi (1),
-	gmb (2)} (SIZE (3..8))
--- Other bits than listed above shall be discarded.
-
-RNC-InterfaceList ::= BIT STRING {
-	iu (0),
-	iur (1),
-	iub (2),
-	uu (3)} (SIZE (4..8))
--- Other bits than listed above shall be discarded.
-
-BMSC-InterfaceList ::= BIT STRING {
-	gmb (0)} (SIZE (1..8))
--- Other bits than listed above shall be discarded.
-
-TraceEventList ::= SEQUENCE {
-	msc-s-List	[0] MSC-S-EventList	OPTIONAL,
-	mgw-List		[1] MGW-EventList	OPTIONAL,
-	sgsn-List		[2] SGSN-EventList	OPTIONAL,
-	ggsn-List		[3] GGSN-EventList	OPTIONAL,
-	bmsc-List		[4] BMSC-EventList	OPTIONAL,
-	...}
-
-MSC-S-EventList ::= BIT STRING {
-	mo-mtCall (0),
-	mo-mt-sms (1),
-	lu-imsiAttach-imsiDetach (2),
-	handovers (3),
-	ss (4)} (SIZE (5..16))
--- Other bits than listed above shall be discarded.
-
-MGW-EventList ::= BIT STRING {
-	context (0)} (SIZE (1..8))
--- Other bits than listed above shall be discarded.
-
-SGSN-EventList ::= BIT STRING {
-	pdpContext (0),
-	mo-mt-sms (1),
-	rau-gprsAttach-gprsDetach (2),
-	mbmsContext (3)} (SIZE (4..16))
--- Other bits than listed above shall be discarded.
-
-GGSN-EventList ::= BIT STRING {
-	pdpContext (0),
-	mbmsContext (1)} (SIZE (2..8))
--- Other bits than listed above shall be discarded.
-
-BMSC-EventList ::= BIT STRING {
-	mbmsMulticastServiceActivation (0)} (SIZE (1..8))
--- Other bits than listed above shall be discarded.
-
-
-TracePropagationList ::= SEQUENCE {
-	traceReference	[0] TraceReference	OPTIONAL,
-	traceType		[1] TraceType	OPTIONAL,
-	traceReference2	[2] TraceReference2	OPTIONAL,
-	traceRecordingSessionReference	[3] TraceRecordingSessionReference OPTIONAL,
-	rnc-TraceDepth	[4] TraceDepth	OPTIONAL,
-	rnc-InterfaceList	[5] RNC-InterfaceList	OPTIONAL,
-	msc-s-TraceDepth	[6] TraceDepth	OPTIONAL,
-	msc-s-InterfaceList	[7] MSC-S-InterfaceList	OPTIONAL,
-	msc-s-EventList	[8] MSC-S-EventList	OPTIONAL,
-	mgw-TraceDepth	[9] TraceDepth	OPTIONAL,
-	mgw-InterfaceList	[10] MGW-InterfaceList	OPTIONAL,
-	mgw-EventList	[11] MGW-EventList	OPTIONAL,
-	...}
-
-ActivateTraceModeRes ::= SEQUENCE {
-	extensionContainer	[0] ExtensionContainer	OPTIONAL,
-	...,
-	traceSupportIndicator	[1]	NULL		OPTIONAL
-	}
-
-DeactivateTraceModeArg ::= SEQUENCE {
-	imsi			[0] IMSI		OPTIONAL,
-	traceReference	[1] TraceReference,
-	extensionContainer	[2] ExtensionContainer	OPTIONAL,
-	...,
-	traceReference2	[3] TraceReference2	OPTIONAL
-	}
-
-DeactivateTraceModeRes ::= SEQUENCE {
-	extensionContainer	[0] ExtensionContainer	OPTIONAL,
-	...}
-
-END
-
diff --git a/rrlp-ephemeris/asn1/MAP-SM-DataTypes.asn b/rrlp-ephemeris/asn1/MAP-SM-DataTypes.asn
deleted file mode 100644
index 0ef941f..0000000
--- a/rrlp-ephemeris/asn1/MAP-SM-DataTypes.asn
+++ /dev/null
@@ -1,270 +0,0 @@
--- $Id: MAP-SM-DataTypes.asn 28149 2009-04-25 17:45:34Z etxrab $
--- 3GPP TS 29.002  V8.9.0 (2009-04)  
--- 17.7.6	Short message data types
-
-MAP-SM-DataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-SM-DataTypes (16) version11 (11)}
-
-DEFINITIONS
-
-IMPLICIT TAGS
-
-::=
-
-BEGIN
-
-EXPORTS
-	RoutingInfoForSM-Arg,
-	RoutingInfoForSM-Res,
-	MO-ForwardSM-Arg,
-	MO-ForwardSM-Res,
-	MT-ForwardSM-Arg,
-	MT-ForwardSM-Res,
-	ReportSM-DeliveryStatusArg,
-	ReportSM-DeliveryStatusRes,
-	AlertServiceCentreArg,
-	InformServiceCentreArg,
-	ReadyForSM-Arg, 
-	ReadyForSM-Res,
-	SM-DeliveryOutcome,
-	AlertReason,
-	Additional-Number,
-	MT-ForwardSM-VGCS-Arg,
-	MT-ForwardSM-VGCS-Res
-;
-
-IMPORTS
-	AddressString,
-	ISDN-AddressString,
-	SignalInfo,
-	IMSI,
-	LMSI,
-	ASCI-CallReference
-
-FROM MAP-CommonDataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-CommonDataTypes (18) version11 (11)}
-
-	AbsentSubscriberDiagnosticSM
-FROM MAP-ER-DataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-ER-DataTypes (17) version11 (11)}
-
-	ExtensionContainer
-FROM MAP-ExtensionDataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-ExtensionDataTypes (21) version11 (11)}
-;
-
-
-RoutingInfoForSM-Arg ::= SEQUENCE {
-	msisdn		[0] ISDN-AddressString,
-	sm-RP-PRI		[1] BOOLEAN,
-	serviceCentreAddress	[2] AddressString,
-	extensionContainer	[6] ExtensionContainer	OPTIONAL,
-	... ,
-	gprsSupportIndicator	[7]	NULL		OPTIONAL,
-	-- gprsSupportIndicator is set only if the SMS-GMSC supports
-	-- receiving of two numbers from the HLR
-	sm-RP-MTI		[8] SM-RP-MTI	OPTIONAL,
-	sm-RP-SMEA	[9] SM-RP-SMEA	OPTIONAL,
-	sm-deliveryNotIntended	[10] SM-DeliveryNotIntended	OPTIONAL }
-
-SM-DeliveryNotIntended ::= ENUMERATED {
-	onlyIMSI-requested  (0),
-	onlyMCC-MNC-requested  (1),
-	...}
-
-SM-RP-MTI ::= INTEGER (0..10)
-	-- 0 SMS Deliver 
-	-- 1 SMS Status Report
-	-- other values are reserved for future use and shall be discarded if
-	-- received
-
-SM-RP-SMEA ::= OCTET STRING (SIZE (1..12))
-	-- this parameter contains an address field which is encoded 
-	-- as defined in 3GPP TS 23.040. An address field contains 3 elements :
-	-- 		address-length
-	-- 		type-of-address
-	-- 		address-value
-
-RoutingInfoForSM-Res ::= SEQUENCE {
-	imsi			IMSI,
-	locationInfoWithLMSI	[0] LocationInfoWithLMSI,
-	extensionContainer	[4] ExtensionContainer	OPTIONAL,
-	...}
-
-LocationInfoWithLMSI ::= SEQUENCE {
-	networkNode-Number	[1] ISDN-AddressString,
-	lmsi			LMSI			OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...,
-	gprsNodeIndicator	[5]	NULL		OPTIONAL,
-	-- gprsNodeIndicator is set only if the SGSN number is sent as the 
-	-- Network Node Number
-	additional-Number	[6] Additional-Number	OPTIONAL 
-	-- NetworkNode-number can be either msc-number or sgsn-number or IP-SM-GW
-	-- number or SMS Router number
-	}
-
-Additional-Number ::= CHOICE {
-	msc-Number	[0] ISDN-AddressString,
-	sgsn-Number	[1] ISDN-AddressString}
-	-- additional-number can be either msc-number or sgsn-number
-	-- if received networkNode-number is msc-number then the 	
-	-- additional number is sgsn-number 
-	-- if received networkNode-number is sgsn-number then the 
-	-- additional number is msc-number 
-
-MO-ForwardSM-Arg ::= SEQUENCE {
-	sm-RP-DA		SM-RP-DA,
-	sm-RP-OA		SM-RP-OA,
-	sm-RP-UI		SignalInfo,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	... ,
-	imsi			IMSI 		OPTIONAL }
-
-MO-ForwardSM-Res ::= SEQUENCE {
-	sm-RP-UI		SignalInfo 	OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-MT-ForwardSM-Arg ::= SEQUENCE {
-	sm-RP-DA		SM-RP-DA,
-	sm-RP-OA		SM-RP-OA,
-	sm-RP-UI		SignalInfo,
-	moreMessagesToSend	NULL			OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-MT-ForwardSM-Res ::= SEQUENCE {
-	sm-RP-UI		SignalInfo	OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-SM-RP-DA ::= CHOICE {
-	imsi			[0] IMSI,
-	lmsi			[1] LMSI,
-	serviceCentreAddressDA	[4] AddressString,
-	noSM-RP-DA	[5] NULL}
-
-SM-RP-OA ::= CHOICE {
-	msisdn		[2] ISDN-AddressString,
-	serviceCentreAddressOA	[4] AddressString,
-	noSM-RP-OA	[5] NULL}
-
-ReportSM-DeliveryStatusArg ::= SEQUENCE {
-	msisdn		ISDN-AddressString,
-	serviceCentreAddress	AddressString,
-	sm-DeliveryOutcome	SM-DeliveryOutcome,
-	absentSubscriberDiagnosticSM	[0] AbsentSubscriberDiagnosticSM
-							OPTIONAL,
-	extensionContainer	[1] ExtensionContainer	OPTIONAL,
-	...,
-	gprsSupportIndicator	[2]	NULL		OPTIONAL,
-	-- gprsSupportIndicator is set only if the SMS-GMSC supports 
-	-- handling of two delivery outcomes
-	deliveryOutcomeIndicator	[3] 	NULL		OPTIONAL,
-	-- DeliveryOutcomeIndicator is set when the SM-DeliveryOutcome
-	-- is for GPRS
-	additionalSM-DeliveryOutcome	[4] 	SM-DeliveryOutcome 	OPTIONAL,
-	-- If received, additionalSM-DeliveryOutcome is for GPRS
-	-- If DeliveryOutcomeIndicator is set, then AdditionalSM-DeliveryOutcome shall be absent
-	additionalAbsentSubscriberDiagnosticSM	[5] 	AbsentSubscriberDiagnosticSM OPTIONAL,
-	-- If received additionalAbsentSubscriberDiagnosticSM is for GPRS
-	-- If DeliveryOutcomeIndicator is set, then AdditionalAbsentSubscriberDiagnosticSM 
-	-- shall be absent
-	ip-sm-gw-Indicator	[6] 	NULL		OPTIONAL,
-	-- the ip-sm-gw indicator indicates by its presence that sm-deliveryOutcome
-	-- is for delivery via IMS
-	-- If present, deliveryOutcomeIndicator shall be absent.
-	ip-sm-gw-sm-deliveryOutcome	[7] 	SM-DeliveryOutcome	OPTIONAL, 
-	-- If received ip-sm-gw-sm-deliveryOutcome is for delivery via IMS
-	-- If ip-sm-gw-Indicator is set, then ip-sm-gw-sm-deliveryOutcome shall be absent
-	ip-sm-gw-absentSubscriberDiagnosticSM	[8]	AbsentSubscriberDiagnosticSM	OPTIONAL
-	-- If received ip-sm-gw-sm-absentSubscriberDiagnosticSM is for delivery via IMS
-	-- If ip-sm-gw-Indicator is set, then ip-sm-gw-sm-absentSubscriberDiagnosticSM 
-	-- shall be absent
-}
-
-SM-DeliveryOutcome ::= ENUMERATED {
-	memoryCapacityExceeded  (0),
-	absentSubscriber  (1),
-	successfulTransfer  (2)}
-
-ReportSM-DeliveryStatusRes ::= SEQUENCE {
-	storedMSISDN	ISDN-AddressString	OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-AlertServiceCentreArg ::= SEQUENCE {
-	msisdn		ISDN-AddressString,
-	serviceCentreAddress	AddressString,
-	...}
-
-InformServiceCentreArg ::= SEQUENCE {
-	storedMSISDN	ISDN-AddressString	OPTIONAL,
-	mw-Status	MW-Status	OPTIONAL,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	... ,
-	absentSubscriberDiagnosticSM	AbsentSubscriberDiagnosticSM	OPTIONAL,
-	additionalAbsentSubscriberDiagnosticSM	[0]	AbsentSubscriberDiagnosticSM	OPTIONAL }
-	-- additionalAbsentSubscriberDiagnosticSM may be present only if 
-	-- absentSubscriberDiagnosticSM is present.
-	-- if included, additionalAbsentSubscriberDiagnosticSM is for GPRS and
-	-- absentSubscriberDiagnosticSM is for non-GPRS
-
-MW-Status ::= BIT STRING {
-	sc-AddressNotIncluded  (0),
-	mnrf-Set  (1),
-	mcef-Set  (2) ,
-	mnrg-Set	  (3)} (SIZE (6..16))
-	-- exception handling:
-	-- bits 4 to 15 shall be ignored if received and not understood
-
-ReadyForSM-Arg ::= SEQUENCE {
-	imsi			[0] IMSI,
-	alertReason	AlertReason,
-	alertReasonIndicator	NULL			OPTIONAL,
-	-- alertReasonIndicator is set only when the alertReason 
-	-- sent to HLR is for GPRS
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...,
-	additionalAlertReasonIndicator	[1] NULL		OPTIONAL
-	-- additionalAlertReasonIndicator is set only when the alertReason
-	-- sent to HLR is for IP-SM-GW
-	}
-
-ReadyForSM-Res ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-AlertReason ::= ENUMERATED {
-	ms-Present  (0),
-	memoryAvailable  (1)}
-
-MT-ForwardSM-VGCS-Arg ::= SEQUENCE {
-	asciCallReference	ASCI-CallReference,
-	sm-RP-OA		SM-RP-OA,
-	sm-RP-UI		SignalInfo,
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...}
-
-MT-ForwardSM-VGCS-Res ::= SEQUENCE {
-	sm-RP-UI		[0] SignalInfo	OPTIONAL,
-	dispatcherList	[1] DispatcherList	OPTIONAL,
-	ongoingCall	NULL			OPTIONAL,
-	extensionContainer	[2] ExtensionContainer	OPTIONAL,
-	...}
-
-DispatcherList ::= 
-	SEQUENCE SIZE (1..maxNumOfDispatchers) OF
-				ISDN-AddressString
-
-maxNumOfDispatchers  INTEGER ::= 5
-
-
-
-END
-
diff --git a/rrlp-ephemeris/asn1/MAP-SS-Code.asn b/rrlp-ephemeris/asn1/MAP-SS-Code.asn
deleted file mode 100644
index 163f2dc..0000000
--- a/rrlp-ephemeris/asn1/MAP-SS-Code.asn
+++ /dev/null
@@ -1,190 +0,0 @@
--- $Id: MAP-SS-Code.asn 28149 2009-04-25 17:45:34Z etxrab $
--- 3GPP TS 29.002 V8.9.0 (2009-04)
--- 17.7.5	Supplementary service codes
-
-MAP-SS-Code {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-SS-Code (15) version11 (11)}
-
-DEFINITIONS
-
-::=
-
-BEGIN
-
-SS-Code ::= OCTET STRING (SIZE (1))
-	-- This type is used to represent the code identifying a single
-	-- supplementary service, a group of supplementary services, or
-	-- all supplementary services. The services and abbreviations
-	-- used are defined in TS 3GPP TS 22.004 [5]. The internal structure is
-	-- defined as follows:
-	--
-	-- bits 87654321: group (bits 8765), and specific service
-	-- (bits 4321)
-
-allSS			SS-Code ::= '00000000'B
-	-- reserved for possible future use
-	-- all SS
-
-allLineIdentificationSS	SS-Code ::= '00010000'B
-	-- reserved for possible future use
-	-- all line identification SS
-clip				SS-Code ::= '00010001'B
-	-- calling line identification presentation
-clir				SS-Code ::= '00010010'B
-	-- calling line identification restriction
-colp				SS-Code ::= '00010011'B
-	-- connected line identification presentation
-colr				SS-Code ::= '00010100'B
-	-- connected line identification restriction
-mci				SS-Code ::= '00010101'B
-	-- reserved for possible future use
-	-- malicious call identification
-
-allNameIdentificationSS	SS-Code ::= '00011000'B
-	-- all name identification SS
-cnap				SS-Code ::= '00011001'B
-	-- calling name presentation
-
-	-- SS-Codes '00011010'B to '00011111'B are reserved for future 
-	-- NameIdentification Supplementary Service use.
-
-allForwardingSS	SS-Code ::= '00100000'B
-	-- all forwarding SS
-cfu				SS-Code ::= '00100001'B
-	-- call forwarding unconditional
-allCondForwardingSS	SS-Code ::= '00101000'B
-	-- all conditional forwarding SS
-cfb				SS-Code ::= '00101001'B
-	-- call forwarding on mobile subscriber busy
-cfnry			SS-Code ::= '00101010'B
-	-- call forwarding on no reply
-cfnrc			SS-Code ::= '00101011'B
-	-- call forwarding on mobile subscriber not reachable 
-cd				SS-Code ::= '00100100'B
-	-- call deflection
-
-allCallOfferingSS	SS-Code ::= '00110000'B
-	-- reserved for possible future use
-	-- all call offering SS includes also all forwarding SS
-ect				SS-Code ::= '00110001'B
-		-- explicit call transfer
-mah				SS-Code ::= '00110010'B
-	-- reserved for possible future use
-	-- mobile access hunting
-
-allCallCompletionSS	SS-Code ::= '01000000'B
-	-- reserved for possible future use
-	-- all Call completion SS
-cw				SS-Code ::= '01000001'B
-	-- call waiting
-hold				SS-Code ::= '01000010'B
-	-- call hold
-ccbs-A			SS-Code ::= '01000011'B
-	-- completion of call to busy subscribers, originating side
-	-- this SS-Code is used only in InsertSubscriberData, DeleteSubscriberData 
-	-- and InterrogateSS
-ccbs-B			SS-Code ::= '01000100'B
-	-- completion of call to busy subscribers, destination side
-	-- this SS-Code is used only in InsertSubscriberData and DeleteSubscriberData
-mc				SS-Code ::= '01000101'B
-	-- multicall
-
-allMultiPartySS	SS-Code ::= '01010000'B
-	-- reserved for possible future use
-	-- all multiparty SS
-multiPTY			SS-Code ::= '01010001'B
-	-- multiparty
-
-allCommunityOfInterest-SS	SS-Code ::= '01100000'B
-	-- reserved for possible future use
-	-- all community of interest SS
-cug				SS-Code ::= '01100001'B
-	-- closed user group
-
-allChargingSS		SS-Code ::= '01110000'B
-	-- reserved for possible future use
-	-- all charging SS
-aoci				SS-Code ::= '01110001'B
-	-- advice of charge information
-aocc				SS-Code ::= '01110010'B
-	-- advice of charge charging
-
-allAdditionalInfoTransferSS	SS-Code ::= '10000000'B
-	-- reserved for possible future use
-	-- all additional information transfer SS
-uus1				SS-Code ::= '10000001'B
-	-- UUS1 user-to-user signalling 
-uus2				SS-Code ::= '10000010'B
-	-- UUS2 user-to-user signalling
-uus3				SS-Code ::= '10000011'B
-	-- UUS3 user-to-user signalling
-
-allBarringSS		SS-Code ::= '10010000'B
-	-- all barring SS
-barringOfOutgoingCalls	SS-Code ::= '10010001'B
-	-- barring of outgoing calls
-baoc				SS-Code ::= '10010010'B
-	-- barring of all outgoing calls
-boic				SS-Code ::= '10010011'B
-	-- barring of outgoing international calls
-boicExHC			SS-Code ::= '10010100'B
-	-- barring of outgoing international calls except those directed
-	-- to the home PLMN Country
-barringOfIncomingCalls	SS-Code ::= '10011001'B
-	-- barring of incoming calls
-baic				SS-Code ::= '10011010'B
-	-- barring of all incoming calls
-bicRoam			SS-Code ::= '10011011'B
-	-- barring of incoming calls when roaming outside home PLMN
-	-- Country
-
-allPLMN-specificSS	SS-Code ::= '11110000'B
-plmn-specificSS-1	SS-Code ::= '11110001'B
-plmn-specificSS-2	SS-Code ::= '11110010'B
-plmn-specificSS-3	SS-Code ::= '11110011'B
-plmn-specificSS-4	SS-Code ::= '11110100'B
-plmn-specificSS-5	SS-Code ::= '11110101'B
-plmn-specificSS-6	SS-Code ::= '11110110'B
-plmn-specificSS-7	SS-Code ::= '11110111'B
-plmn-specificSS-8	SS-Code ::= '11111000'B
-plmn-specificSS-9	SS-Code ::= '11111001'B
-plmn-specificSS-A	SS-Code ::= '11111010'B
-plmn-specificSS-B	SS-Code ::= '11111011'B
-plmn-specificSS-C	SS-Code ::= '11111100'B
-plmn-specificSS-D	SS-Code ::= '11111101'B
-plmn-specificSS-E	SS-Code ::= '11111110'B
-plmn-specificSS-F	SS-Code ::= '11111111'B
-
-allCallPrioritySS	SS-Code ::= '10100000'B
-	-- reserved for possible future use
-	-- all call priority SS
-emlpp			SS-Code ::= '10100001'B
-	-- enhanced Multilevel Precedence Pre-emption (EMLPP) service
-
-allLCSPrivacyException	SS-Code ::= '10110000'B
-	-- all LCS Privacy Exception Classes
-universal			SS-Code ::= '10110001'B
-	-- allow location by any LCS client
-callSessionRelated	SS-Code ::= '10110010'B
-	-- allow location by any value added LCS client to which a call/session 
-	-- is established from the target MS
-callSessionUnrelated	SS-Code ::= '10110011'B
-	-- allow location by designated external value added LCS clients
-plmnoperator		SS-Code ::= '10110100'B
-	-- allow location by designated PLMN operator LCS clients 
-serviceType		SS-Code ::= '10110101'B
-	-- allow location by LCS clients of a designated LCS service type
-
-allMOLR-SS		SS-Code ::= '11000000'B
-	-- all Mobile Originating Location Request Classes
-basicSelfLocation	SS-Code ::= '11000001'B
-	-- allow an MS to request its own location
-autonomousSelfLocation	SS-Code ::= '11000010'B
-	-- allow an MS to perform self location without interaction
-	-- with the PLMN for a predetermined period of time
-transferToThirdParty	SS-Code ::= '11000011'B
-	-- allow an MS to request transfer of its location to another LCS client
-
-END
-
diff --git a/rrlp-ephemeris/asn1/MAP-SS-DataTypes.asn b/rrlp-ephemeris/asn1/MAP-SS-DataTypes.asn
deleted file mode 100644
index 253f7f0..0000000
--- a/rrlp-ephemeris/asn1/MAP-SS-DataTypes.asn
+++ /dev/null
@@ -1,342 +0,0 @@
--- $Id: MAP-SS-DataTypes.asn 28149 2009-04-25 17:45:34Z etxrab $
--- 3GPP TS 29.002 V8.9.0 (2009-04)  
--- 17.7.4	Supplementary service data types
- 
-MAP-SS-DataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-SS-DataTypes (14) version11 (11)}
-
-DEFINITIONS
-
-IMPLICIT TAGS
-
-::=
-
-BEGIN
-
-EXPORTS
-	RegisterSS-Arg,
-	SS-Info,
-	SS-Status,
-	SS-SubscriptionOption,
-	SS-ForBS-Code,
-	InterrogateSS-Res,
-	USSD-Arg,
-	USSD-Res, 
-	USSD-DataCodingScheme,
-	USSD-String,
-	Password,
-	GuidanceInfo,
-	SS-List,
-	SS-InfoList,
-	OverrideCategory,
-	CliRestrictionOption,
-	NoReplyConditionTime,
-	ForwardingOptions,
-	maxNumOfSS,
-	SS-Data,
-	SS-InvocationNotificationArg,
-	SS-InvocationNotificationRes,
-	CCBS-Feature,
-	RegisterCC-EntryArg,
-	RegisterCC-EntryRes,
-	EraseCC-EntryArg,
-	EraseCC-EntryRes
-;
-
-IMPORTS
-	AddressString,
-	ISDN-AddressString,
-	ISDN-SubaddressString,
-	FTN-AddressString,
-	IMSI,
-	BasicServiceCode,
-	AlertingPattern,
-	EMLPP-Priority, 
-	MaxMC-Bearers,
-	MC-Bearers,
-	ExternalSignalInfo
-FROM MAP-CommonDataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-CommonDataTypes (18) version11 (11)}
-
-	ExtensionContainer
-FROM MAP-ExtensionDataTypes {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-ExtensionDataTypes (21) version11 (11)}
-
-	SS-Code
-FROM MAP-SS-Code {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-SS-Code (15) version11 (11)}
-;
-
-
-RegisterSS-Arg ::= SEQUENCE {
-	ss-Code		SS-Code,
-	basicService	BasicServiceCode	OPTIONAL,
-	forwardedToNumber	[4] AddressString	OPTIONAL,
-	forwardedToSubaddress	[6] ISDN-SubaddressString	OPTIONAL,
-	noReplyConditionTime	[5] NoReplyConditionTime	OPTIONAL,
-	...,
-	defaultPriority	[7] EMLPP-Priority	OPTIONAL,
-	nbrUser		[8] MC-Bearers	OPTIONAL,
-	longFTN-Supported	[9]	NULL		OPTIONAL }
-
-NoReplyConditionTime ::= INTEGER (5..30)
-
-SS-Info ::= CHOICE {
-	forwardingInfo	[0] ForwardingInfo,
-	callBarringInfo	[1] CallBarringInfo,
-	ss-Data		[3] SS-Data}
-
-ForwardingInfo ::= SEQUENCE {
-	ss-Code		SS-Code		OPTIONAL,
-	forwardingFeatureList	ForwardingFeatureList,
-	...}
-
-ForwardingFeatureList ::= 
-	SEQUENCE SIZE (1..maxNumOfBasicServiceGroups) OF
-				ForwardingFeature
-
-ForwardingFeature ::= SEQUENCE {
-	basicService	BasicServiceCode	OPTIONAL,
-	ss-Status		[4] SS-Status	OPTIONAL,
-	forwardedToNumber	[5] ISDN-AddressString	OPTIONAL,
-	forwardedToSubaddress	[8] ISDN-SubaddressString	OPTIONAL,
-	forwardingOptions	[6] ForwardingOptions	OPTIONAL,
-	noReplyConditionTime	[7] NoReplyConditionTime	OPTIONAL,
-	...,
-	longForwardedToNumber	[9] FTN-AddressString	OPTIONAL }
-
-SS-Status ::= OCTET STRING (SIZE (1))
-
-	-- bits 8765: 0000 (unused)
-	-- bits 4321: Used to convey the "P bit","R bit","A bit" and "Q bit",
-	--		    representing supplementary service state information
-	--		    as defined in TS 3GPP TS 23.011 [22]
-
-	-- bit 4: "Q bit"
-
-	-- bit 3: "P bit"
-
-	-- bit 2: "R bit"
-
-	-- bit 1: "A bit"
-
-ForwardingOptions ::= OCTET STRING (SIZE (1))
-
-	-- bit 8: notification to forwarding party
-	--	0  no notification
-	--	1  notification
-
-	-- bit 7: redirecting presentation
-	--	0 no presentation  
-	--	1  presentation
-
-	-- bit 6: notification to calling party
-	--	0  no notification
-	--	1  notification
-
-	-- bit 5: 0 (unused)
-
-	-- bits 43: forwarding reason
-	--	00  ms not reachable
-	--	01  ms busy
-	--	10  no reply
-	--	11  unconditional when used in a SRI Result, 
-	--	    or call deflection when used in a RCH Argument
-	-- bits 21: 00 (unused)
-
-CallBarringInfo ::= SEQUENCE {
-	ss-Code		SS-Code		OPTIONAL,
-	callBarringFeatureList	CallBarringFeatureList,
-	...}
-
-CallBarringFeatureList ::= SEQUENCE SIZE (1..maxNumOfBasicServiceGroups) OF
-				CallBarringFeature
-
-CallBarringFeature ::= SEQUENCE {
-	basicService	BasicServiceCode	OPTIONAL,
-	ss-Status	[4] SS-Status	OPTIONAL,
-	...}
-
-SS-Data ::= SEQUENCE {
-	ss-Code		SS-Code		OPTIONAL,
-	ss-Status		[4] SS-Status	OPTIONAL,
-	ss-SubscriptionOption	SS-SubscriptionOption	OPTIONAL,
-	basicServiceGroupList	BasicServiceGroupList	OPTIONAL,
-	...,
-	defaultPriority	EMLPP-Priority	OPTIONAL,
-	nbrUser		[5] MC-Bearers	OPTIONAL
-	}
-
-SS-SubscriptionOption ::= CHOICE {
-	cliRestrictionOption	[2] CliRestrictionOption,
-	overrideCategory	[1] OverrideCategory}
-
-CliRestrictionOption ::= ENUMERATED {
-	permanent  (0),
-	temporaryDefaultRestricted  (1),
-	temporaryDefaultAllowed  (2)}
-
-OverrideCategory ::= ENUMERATED {
-	overrideEnabled  (0),
-	overrideDisabled  (1)}
-
-SS-ForBS-Code ::= SEQUENCE {
-	ss-Code		SS-Code,
-	basicService	BasicServiceCode	OPTIONAL,
-	...,
-	longFTN-Supported	[4]	NULL		OPTIONAL }
-
-GenericServiceInfo ::= SEQUENCE {
-	ss-Status	SS-Status,
-	cliRestrictionOption	CliRestrictionOption	OPTIONAL,
-	...,
-	maximumEntitledPriority	[0] EMLPP-Priority	OPTIONAL,
-	defaultPriority	[1] EMLPP-Priority	OPTIONAL,
-	ccbs-FeatureList	[2] CCBS-FeatureList	OPTIONAL,
-	nbrSB		[3] MaxMC-Bearers	OPTIONAL,
-	nbrUser		[4] MC-Bearers	OPTIONAL,
-	nbrSN		[5] MC-Bearers	OPTIONAL }
-
-CCBS-FeatureList ::= SEQUENCE SIZE (1..maxNumOfCCBS-Requests) OF
-				CCBS-Feature
-
-maxNumOfCCBS-Requests  INTEGER ::= 5
-
-CCBS-Feature ::= SEQUENCE {
-	ccbs-Index	[0] CCBS-Index	OPTIONAL,
-	b-subscriberNumber	[1] ISDN-AddressString	OPTIONAL,
-	b-subscriberSubaddress	[2] ISDN-SubaddressString	OPTIONAL,
-	basicServiceGroup	[3] BasicServiceCode	OPTIONAL,
-	...}
-
-CCBS-Index  ::= INTEGER (1..maxNumOfCCBS-Requests)
-
-InterrogateSS-Res ::= CHOICE {
-	ss-Status		[0] SS-Status,
-	basicServiceGroupList	[2] BasicServiceGroupList,
-	forwardingFeatureList	[3] ForwardingFeatureList,
-	genericServiceInfo	[4]	GenericServiceInfo }
-
-USSD-Arg ::= SEQUENCE {
-	ussd-DataCodingScheme	USSD-DataCodingScheme,
-	ussd-String	USSD-String,
-	... ,
-	alertingPattern	AlertingPattern	OPTIONAL,
-	msisdn		[0] ISDN-AddressString	OPTIONAL }
-
-USSD-Res ::= SEQUENCE {
-	ussd-DataCodingScheme	USSD-DataCodingScheme,
-	ussd-String	USSD-String,
-	...}
-
-USSD-DataCodingScheme ::= OCTET STRING (SIZE (1))
-	-- The structure of the USSD-DataCodingScheme is defined by
-	-- the Cell Broadcast Data Coding Scheme as described in
-	-- TS 3GPP TS 23.038 [25]
-
-USSD-String ::= OCTET STRING (SIZE (1..maxUSSD-StringLength))
-	-- The structure of the contents of the USSD-String is dependent
-	-- on the USSD-DataCodingScheme as described in TS 3GPP TS 23.038 [25].
-
-maxUSSD-StringLength  INTEGER ::= 160
-
-Password ::= NumericString
-	(FROM ("0"|"1"|"2"|"3"|"4"|"5"|"6"|"7"|"8"|"9"))
-	(SIZE (4))
-
-GuidanceInfo ::= ENUMERATED {
-	enterPW  (0),
-	enterNewPW  (1),
-	enterNewPW-Again  (2)}
-	-- How this information is really delivered to the subscriber
-	-- (display, announcement, ...) is not part of this
-	-- specification.
-
-SS-List ::= SEQUENCE SIZE (1..maxNumOfSS) OF
-				SS-Code
-
-maxNumOfSS  INTEGER ::= 30
-
-SS-InfoList ::= SEQUENCE SIZE (1..maxNumOfSS) OF
-				SS-Info
-
-BasicServiceGroupList ::= SEQUENCE SIZE (1..maxNumOfBasicServiceGroups) OF
-				BasicServiceCode
-
-maxNumOfBasicServiceGroups  INTEGER ::= 13
-
-SS-InvocationNotificationArg ::= SEQUENCE {
-	imsi			[0] IMSI,
-	msisdn		[1] ISDN-AddressString,
-	ss-Event		[2] SS-Code,
-	-- The following SS-Code values are allowed :
-	-- ect		SS-Code ::= '00110001'B
-	-- multiPTY	SS-Code ::= '01010001'B
-	-- cd		SS-Code ::= '00100100'B
-	-- ccbs		SS-Code ::= '01000100'B
-	ss-EventSpecification	[3] SS-EventSpecification	OPTIONAL,
-	extensionContainer	[4] ExtensionContainer	OPTIONAL,
-	...,
-	b-subscriberNumber	[5]	ISDN-AddressString	OPTIONAL,
-	ccbs-RequestState	[6]	CCBS-RequestState	OPTIONAL
-	}
-
-CCBS-RequestState ::= ENUMERATED {
-	request  	(0),
-	recall  	(1),
-	active  	(2),
-	completed	(3),
-	suspended	(4),
-	frozen	(5),
-	deleted	(6)
-	}
-
-SS-InvocationNotificationRes ::= SEQUENCE {
-	extensionContainer	ExtensionContainer	OPTIONAL,
-	...
-	}
-
-SS-EventSpecification ::= SEQUENCE SIZE (1..maxEventSpecification) OF
-				AddressString
-
-maxEventSpecification  INTEGER ::= 2
-
-RegisterCC-EntryArg ::= SEQUENCE {
-	ss-Code		[0]	SS-Code,
-	ccbs-Data		[1]	CCBS-Data	OPTIONAL,
-	...}
-
-CCBS-Data ::= SEQUENCE {
-	ccbs-Feature	[0]	CCBS-Feature,
-	translatedB-Number	[1]	ISDN-AddressString,
-	serviceIndicator	[2]	ServiceIndicator	OPTIONAL,
-	callInfo		[3]	ExternalSignalInfo,
-	networkSignalInfo	[4]	ExternalSignalInfo,
-	...}
-
-ServiceIndicator ::= BIT STRING {
-	clir-invoked (0),
-	camel-invoked (1)} (SIZE(2..32)) 
-	-- exception handling:
-	-- bits 2 to 31 shall be ignored if received and not understood
-
-RegisterCC-EntryRes ::= SEQUENCE {
-	ccbs-Feature	[0] CCBS-Feature	OPTIONAL,
-	...}
-
-EraseCC-EntryArg ::= SEQUENCE {
-	ss-Code		[0]	SS-Code,
-	ccbs-Index	[1]	CCBS-Index	OPTIONAL,
-	...}
-
-EraseCC-EntryRes ::= SEQUENCE {
-	ss-Code		[0]	SS-Code,
-	ss-Status		[1] SS-Status	OPTIONAL,
-	...}
-
-END
-
diff --git a/rrlp-ephemeris/asn1/MAP-TS-Code.asn b/rrlp-ephemeris/asn1/MAP-TS-Code.asn
deleted file mode 100644
index 5ac00bf..0000000
--- a/rrlp-ephemeris/asn1/MAP-TS-Code.asn
+++ /dev/null
@@ -1,92 +0,0 @@
--- $Id: MAP-TS-Code.asn 28149 2009-04-25 17:45:34Z etxrab $
--- 3GPP TS 29.002 V8.9.0 (2009-04) 
--- 17.7.9	Teleservice Codes
- 
-MAP-TS-Code {
-   itu-t identified-organization (4) etsi (0) mobileDomain (0)
-   gsm-Network (1) modules (3) map-TS-Code (19) version11 (11)}
-
-DEFINITIONS
-
-::=
-
-BEGIN
-
-TeleserviceCode ::= OCTET STRING (SIZE (1))
-	-- This type is used to represent the code identifying a single
-	-- teleservice, a group of teleservices, or all teleservices. The
-	-- services are defined in TS GSM 22.003 [4].
-	-- The internal structure is defined as follows:
-
-	-- bits 87654321: group (bits 8765) and specific service
-	-- (bits 4321)
-
-Ext-TeleserviceCode ::= OCTET STRING (SIZE (1..5))
-	-- This type is used to represent the code identifying a single
-	-- teleservice, a group of teleservices, or all teleservices. The
-	-- services are defined in TS GSM 22.003 [4].
-	-- The internal structure is defined as follows:
-
-	-- OCTET 1:
-	-- bits 87654321: group (bits 8765) and specific service
-	-- (bits 4321)
-
-	-- OCTETS 2-5: reserved for future use. If received the
-    -- Ext-TeleserviceCode shall be
- 	-- treated according to the exception handling defined for the
-	-- operation that uses this type.
-
-	-- Ext-TeleserviceCode includes all values defined for TeleserviceCode.
-
-allTeleservices	TeleserviceCode ::= '00000000'B
-
-allSpeechTransmissionServices	TeleserviceCode ::= '00010000'B
-telephony			TeleserviceCode ::= '00010001'B
-emergencyCalls		TeleserviceCode ::= '00010010'B
-
-allShortMessageServices	TeleserviceCode ::= '00100000'B
-shortMessageMT-PP	TeleserviceCode ::= '00100001'B
-shortMessageMO-PP	TeleserviceCode ::= '00100010'B
-
-allFacsimileTransmissionServices	TeleserviceCode ::= '01100000'B
-facsimileGroup3AndAlterSpeech	TeleserviceCode ::= '01100001'B
-automaticFacsimileGroup3	TeleserviceCode ::= '01100010'B
-facsimileGroup4	TeleserviceCode ::= '01100011'B
-
--- The following non-hierarchical Compound Teleservice Groups
--- are defined in TS 3GPP TS 22.030:
-allDataTeleservices	TeleserviceCode ::= '01110000'B
-	-- covers Teleservice Groups 'allFacsimileTransmissionServices'
-	-- and 'allShortMessageServices'
-allTeleservices-ExeptSMS	TeleserviceCode ::= '10000000'B
-	-- covers Teleservice Groups 'allSpeechTransmissionServices' and
-	-- 'allFacsimileTransmissionServices'
---
--- Compound Teleservice Group Codes are only used in call
--- independent supplementary service operations, i.e. they
--- are not used in InsertSubscriberData or in
--- DeleteSubscriberData messages.
-
-allVoiceGroupCallServices	TeleserviceCode ::= '10010000'B
-voiceGroupCall		TeleserviceCode ::= '10010001'B
-voiceBroadcastCall	TeleserviceCode ::= '10010010'B
-
-allPLMN-specificTS	TeleserviceCode ::= '11010000'B
-plmn-specificTS-1	TeleserviceCode ::= '11010001'B
-plmn-specificTS-2	TeleserviceCode ::= '11010010'B
-plmn-specificTS-3	TeleserviceCode ::= '11010011'B
-plmn-specificTS-4	TeleserviceCode ::= '11010100'B
-plmn-specificTS-5	TeleserviceCode ::= '11010101'B
-plmn-specificTS-6	TeleserviceCode ::= '11010110'B
-plmn-specificTS-7	TeleserviceCode ::= '11010111'B
-plmn-specificTS-8	TeleserviceCode ::= '11011000'B
-plmn-specificTS-9	TeleserviceCode ::= '11011001'B
-plmn-specificTS-A	TeleserviceCode ::= '11011010'B
-plmn-specificTS-B	TeleserviceCode ::= '11011011'B
-plmn-specificTS-C	TeleserviceCode ::= '11011100'B
-plmn-specificTS-D	TeleserviceCode ::= '11011101'B
-plmn-specificTS-E	TeleserviceCode ::= '11011110'B
-plmn-specificTS-F	TeleserviceCode ::= '11011111'B
-
-END
-
diff --git a/rrlp-ephemeris/asn1/RRLP-Components.asn b/rrlp-ephemeris/asn1/RRLP-Components.asn
deleted file mode 100644
index 3bade6a..0000000
--- a/rrlp-ephemeris/asn1/RRLP-Components.asn
+++ /dev/null
@@ -1,1488 +0,0 @@
--- RRLP-Components.asn
--- $Id$
--- Taken from 3GPP TS 44.031 V7.4.0 (2007-03)
--- http://www.3gpp.org/ftp/Specs/archive/44_series/44.031/44031-740.zip/44031-740.doc
---
--- 4 Components
--- 5 Elements of Components
---
-
-RRLP-Components
--- { RRLP-Components }
-
-DEFINITIONS AUTOMATIC TAGS ::=
-
-BEGIN
-
-IMPORTS
-	Ext-GeographicalInformation, VelocityEstimate
-FROM
-	MAP-LCS-DataTypes {
-	itu-t identified-organization (4) etsi (0) mobileDomain (0)
-	gsm-Network (1) modules (3) map-LCS-DataTypes (25) version11 (11)}
-
-	ExtensionContainer
-FROM MAP-ExtensionDataTypes {
-	itu-t identified-organization (4) etsi (0) mobileDomain (0)
-	gsm-Network (1) modules (3) map-ExtensionDataTypes (21) version11 (11)}
-;
-
-
--- Add here other ASN.1 definitions presented below
--- in chapters 4 and 5.
-
--- Measurement Position request component
-MsrPosition-Req ::= SEQUENCE {
-	positionInstruct		PositionInstruct,
-	referenceAssistData		ReferenceAssistData		OPTIONAL,
-	msrAssistData			MsrAssistData			OPTIONAL,
-	systemInfoAssistData	SystemInfoAssistData	OPTIONAL,
-	gps-AssistData			GPS-AssistData			OPTIONAL,
-	extensionContainer		ExtensionContainer		OPTIONAL,
-	...,
-	-- Release 98 extension element
-rel98-MsrPosition-Req-extension			Rel98-MsrPosition-Req-Extension			OPTIONAL,	
-	-- Release 5 extension element
-rel5-MsrPosition-Req-extension			Rel5-MsrPosition-Req-Extension			OPTIONAL,
-	-- Release 7 extension element
-rel7-MsrPosition-Req-extension			Rel7-MsrPosition-Req-Extension			OPTIONAL
-}
-
--- Measurement Position response component
-MsrPosition-Rsp ::= SEQUENCE {
-	multipleSets			MultipleSets			OPTIONAL,
-	referenceIdentity		ReferenceIdentity		OPTIONAL,
-	otd-MeasureInfo			OTD-MeasureInfo			OPTIONAL,
-	locationInfo			LocationInfo			OPTIONAL,
-	gps-MeasureInfo			GPS-MeasureInfo			OPTIONAL,
-	locationError			LocationError			OPTIONAL,
-	extensionContainer		ExtensionContainer		OPTIONAL,
-	...,	
-	-- Release extension here
-	rel-98-MsrPosition-Rsp-Extension		
-							Rel-98-MsrPosition-Rsp-Extension		OPTIONAL,
-	rel-5-MsrPosition-Rsp-Extension
-							Rel-5-MsrPosition-Rsp-Extension		OPTIONAL,
-	-- rel-5-MsrPosition-Rsp-Extension and other possible future extensions
-	-- are the only information elements that may be included in the 2nd
-	-- MsrPosition-Rsp component when RRLP pseudo-segmentation is used
-	rel-7-MsrPosition-Rsp-Extension
-							Rel-7-MsrPosition-Rsp-Extension		OPTIONAL
-}
-
--- Assistance Data component
-AssistanceData ::= SEQUENCE {
-	referenceAssistData	ReferenceAssistData			OPTIONAL,
-	msrAssistData			MsrAssistData			OPTIONAL,
-	systemInfoAssistData	SystemInfoAssistData	OPTIONAL,
-	gps-AssistData			GPS-AssistData			OPTIONAL,	
-	moreAssDataToBeSent		MoreAssDataToBeSent		OPTIONAL,	-- If not present, interpret as only
-																-- Assistance Data component used to
-																-- deliver entire set of assistance
-																-- data.
-	extensionContainer		ExtensionContainer		OPTIONAL,
-	...,
-	-- Release extension here
-	rel98-AssistanceData-Extension	Rel98-AssistanceData-Extension	OPTIONAL,
-	rel5-AssistanceData-Extension	Rel5-AssistanceData-Extension	OPTIONAL,
- rel7-AssistanceData-Extension Rel7-AssistanceData-Extension OPTIONAL	
-}
-
--- Protocol Error component
-ProtocolError ::= SEQUENCE {
-	errorCause				ErrorCodes,	
-	extensionContainer		ExtensionContainer		OPTIONAL,
-	...,
-	-- Release extensions here
-	rel-5-ProtocolError-Extension Rel-5-ProtocolError-Extension		OPTIONAL
-}
-
--- Position instructions
-PositionInstruct ::= SEQUENCE {
-	-- Method type
-	methodType				MethodType,	
-	positionMethod			PositionMethod,
-	measureResponseTime		MeasureResponseTime,		
-	useMultipleSets			UseMultipleSets,		
-	environmentCharacter	EnvironmentCharacter	OPTIONAL	
-}
-
---
-MethodType ::= CHOICE {
-	msAssisted		AccuracyOpt,	-- accuracy is optional
-	msBased			Accuracy,		-- accuracy is mandatory
-	msBasedPref		Accuracy,		-- accuracy is mandatory
-	msAssistedPref	Accuracy 		-- accuracy is mandatory
-}
-
--- Accuracy of the location estimation
-AccuracyOpt ::= SEQUENCE {
-	accuracy		Accuracy	OPTIONAL
-}
-
--- The values of this field are defined in 3GPP TS 23.032 (Uncertainty code)
-Accuracy ::= INTEGER (0..127)
-
-
--- Position Method
-PositionMethod ::= ENUMERATED {
-	eotd (0),
-	gps (1),
-	gpsOrEOTD (2)
-}
-
--- Measurement request response time
-MeasureResponseTime ::= INTEGER (0..7)
-
--- useMultiple Sets, FFS!
-UseMultipleSets ::= ENUMERATED {
-	multipleSets (0),		-- multiple sets are allowed
-	oneSet (1)				-- sending of multiple is not allowed
-}
-
--- Environment characterization
-EnvironmentCharacter ::= ENUMERATED {
-	badArea (0),		-- bad urban or suburban, heavy multipath and NLOS
-	notBadArea (1),		-- light multipath and NLOS
-	mixedArea (2),		-- not defined or mixed environment
-	...
-}
-
--- E-OTD reference BTS for Assitance data IE
-ReferenceAssistData ::= SEQUENCE {
-	bcchCarrier		BCCHCarrier,						-- BCCH carrier
-	bsic			BSIC,								-- BSIC
-	timeSlotScheme	TimeSlotScheme, 					-- Timeslot scheme
-	btsPosition		BTSPosition			OPTIONAL
-}
-
--- ellipsoid point and
--- ellipsoid point with altitude and uncertainty ellipsoid shapes are supported
-BTSPosition ::= Ext-GeographicalInformation
-
--- RF channel number of BCCH
-BCCHCarrier ::= INTEGER (0..1023)
-
--- Base station Identity Code
-BSIC ::= INTEGER (0..63)
-
--- Timeslot scheme
-TimeSlotScheme ::= ENUMERATED {
-	equalLength (0),
-	variousLength (1)
-}
-
--- Time slot (modulo)
-ModuloTimeSlot ::= INTEGER (0..3)
-
--- E-OTD measurement assistance data IE
--- The total number of neighbors in this element (MsrAssistData)
--- and in SystemInfoAssistData element (presented neighbors
--- can be at a maximum 15!)
-MsrAssistData ::= SEQUENCE {
-	 msrAssistList SeqOfMsrAssistBTS
-}
-SeqOfMsrAssistBTS ::= SEQUENCE (SIZE(1..15)) OF MsrAssistBTS
-
-MsrAssistBTS ::= SEQUENCE {
-	bcchCarrier			BCCHCarrier,		-- BCCH carrier
-	bsic				BSIC,				-- BSIC
-	multiFrameOffset	MultiFrameOffset, 	-- multiframe offset
-	timeSlotScheme		TimeSlotScheme,		-- Timeslot scheme
-	roughRTD			RoughRTD,			-- rough RTD value
-
-	-- Location Calculation Assistance data is moved here
-	calcAssistanceBTS	CalcAssistanceBTS	OPTIONAL
-}
-
--- Multiframe offset
-MultiFrameOffset ::= INTEGER (0..51)
--- The Multiframe Offset value 51 shall not be encoded by the transmitting entity and
--- shall be treated by the receiving entity as 0.
-
--- Rough RTD value between one base station and reference BTS
-RoughRTD ::= INTEGER (0..1250)
--- The RoughRTD value 1250 shall not be encoded by the transmitting entity and shall
--- be treated by the receiving entity as 0.
-
--- E-OTD Measurement assistance data for system information List IE
--- The total number of base stations in this element (SystemInfoAssistData
--- presented neighbors) and in MsrAssistData element can be at a maximum 15.
-SystemInfoAssistData ::= SEQUENCE {
-	systemInfoAssistList 	SeqOfSystemInfoAssistBTS
-}
-SeqOfSystemInfoAssistBTS::= SEQUENCE (SIZE(1..32)) OF SystemInfoAssistBTS
-
--- whether n.th is present or not ?
-SystemInfoAssistBTS ::= CHOICE {
-	notPresent		NULL,
-	present			AssistBTSData
-}
-
--- Actual assistance data for system information base station
-AssistBTSData ::= SEQUENCE {
-	bsic				BSIC,				-- BSIC
-	multiFrameOffset	MultiFrameOffset,	-- multiframe offset
-	timeSlotScheme		TimeSlotScheme,		-- Timeslot scheme
-	roughRTD			RoughRTD,			-- rough RTD value
-
-	-- Location Calculation Assistance data
-	calcAssistanceBTS	CalcAssistanceBTS	OPTIONAL
-}
-
--- E-OTD Location calculation assistance data,
--- CalcAssistanceBTS element is optional not subfields
-CalcAssistanceBTS ::= SEQUENCE {
-	fineRTD				FineRTD,		-- fine RTD value between base stations
-	referenceWGS84		ReferenceWGS84	-- reference coordinates
-}
-
--- Coordinates of neighbour BTS, WGS-84 ellipsoid
-ReferenceWGS84 ::= SEQUENCE {
-	relativeNorth	RelDistance,				-- relative distance (south negative)
-	relativeEast	RelDistance,				-- relative distance (west negative)
-	-- Relative Altitude is not always known
-	relativeAlt		RelativeAlt		OPTIONAL	-- relative altitude
-}
-
--- Fine RTD value between this BTS and the reference BTS	
-FineRTD ::= INTEGER (0..255)
-
--- Relative north/east distance
-RelDistance ::= INTEGER (-200000..200000)
-
--- Relative altitude
-RelativeAlt ::= INTEGER (-4000..4000)
-
--- Measure position response IEs
--- Reference Identity
--- Multiple sets
-MultipleSets ::= SEQUENCE {
-	-- number of reference sets
-	nbrOfSets			INTEGER (2..3),		
-
-	-- This field actually tells the number of reference BTSs
-	nbrOfReferenceBTSs	INTEGER (1..3),
-
-	-- This field is conditional and included optionally only if
-	-- nbrOfSets is 3 and number of reference BTSs is 2.
-	referenceRelation		ReferenceRelation		OPTIONAL
-}
-
--- Relation between refence BTSs and sets
-ReferenceRelation ::= ENUMERATED {
-	secondBTSThirdSet (0),	-- 1st BTS related to 1st and 2nd sets
-	secondBTSSecondSet (1),	-- 1st BTS related to 1st and 3rd sets
-	firstBTSFirstSet (2)	-- 1st BTS related to 1st set
-}
-
--- Reference BTS Identity, this element contains number of
--- BTSs told nbrOfReferenceBTSs field in Multiple sets element)
-ReferenceIdentity ::= SEQUENCE {
-	-- Reference BTS list
-	refBTSList		SeqOfReferenceIdentityType
-}
-SeqOfReferenceIdentityType ::= SEQUENCE (SIZE(1..3)) OF ReferenceIdentityType
-
--- Cell identity
-ReferenceIdentityType ::= CHOICE {
-	bsicAndCarrier	BSICAndCarrier,		-- BSIC and Carrier
-	ci				CellID,				-- Cell ID, LAC not needed
-	requestIndex	RequestIndex,		-- Index to Requested Neighbor List
-	systemInfoIndex	SystemInfoIndex,	-- Index to System info list, this type of ref. identity
-										-- shall not be used by the MS unless it has received
-										-- the SystemInfoAssistData from the SMLC for this cell.
-	ciAndLAC		CellIDAndLAC		-- CI and LAC
-}
-
-BSICAndCarrier ::= SEQUENCE {
-	carrier	BCCHCarrier,
-	bsic		BSIC
-}
-
-RequestIndex ::= INTEGER (1..16)
-
-SystemInfoIndex ::= INTEGER (1..32)
-
-CellIDAndLAC ::= SEQUENCE {
-	referenceLAC	LACID,				-- Location area code
-	referenceCI		CellID				-- Cell identity
-}
-CellID ::= INTEGER (0..65535)
-LACID ::= INTEGER (0..65535)
-
--- OTD-MeasureInfo
-OTD-MeasureInfo ::= SEQUENCE {
-	-- Measurement info elements, OTD-MsrElement is repeated number of times
-	-- told in nbrOfReferenceBTSs in MultipleSets, default value is 1
-	otdMsrFirstSets		OTD-MsrElementFirst,
-
-	-- if more than one sets are present this element is repeated
-	-- NumberOfSets - 1 (-1 = first set)
-	otdMsrRestSets		SeqOfOTD-MsrElementRest		OPTIONAL
-}
-
-SeqOfOTD-MsrElementRest ::= SEQUENCE (SIZE(1..2)) OF OTD-MsrElementRest
-
--- OTD measurent information for 1 set
-OTD-MsrElementFirst ::= SEQUENCE {
-	refFrameNumber			INTEGER (0..42431), 				-- Frame number modulo 42432
-	referenceTimeSlot		ModuloTimeSlot,
-	toaMeasurementsOfRef	TOA-MeasurementsOfRef	OPTIONAL,
-	stdResolution			StdResolution,
-	taCorrection			INTEGER (0..960)		OPTIONAL,	-- TA correction
-
-	-- measured neighbors in OTD measurements
-	otd-FirstSetMsrs 		SeqOfOTD-FirstSetMsrs 	OPTIONAL
-}
-SeqOfOTD-FirstSetMsrs ::= SEQUENCE (SIZE(1..10)) OF OTD-FirstSetMsrs
-
--- OTD measurent information 2 and 3 sets if exist
-OTD-MsrElementRest ::= SEQUENCE {
-	refFrameNumber			INTEGER (0..42431), 					-- Frame number modulo 42432
-	referenceTimeSlot		ModuloTimeSlot,
-	toaMeasurementsOfRef	TOA-MeasurementsOfRef		OPTIONAL,
-	stdResolution			StdResolution,
-	taCorrection			INTEGER (0..960)			OPTIONAL,	-- TA correction
-
-	-- measured neighbors in OTD measurements
-	otd-MsrsOfOtherSets 	SeqOfOTD-MsrsOfOtherSets	OPTIONAL
-}
-SeqOfOTD-MsrsOfOtherSets ::= SEQUENCE (SIZE(1..10)) OF OTD-MsrsOfOtherSets
-
--- Standard deviation of the TOA measurements from the reference BTS
-TOA-MeasurementsOfRef ::= SEQUENCE {
-	refQuality			RefQuality,
-	numOfMeasurements	NumOfMeasurements
-}
-
-RefQuality ::= INTEGER (0..31)			-- St Dev of TOA of reference as defined in annex
-NumOfMeasurements ::= INTEGER (0..7)	-- No. of measurements for RefQuality as defined in annex
-StdResolution ::= INTEGER (0..3)		-- Values of resolution are defined in annex
-
-OTD-FirstSetMsrs ::= OTD-MeasurementWithID
-
--- Neighbour info in OTD measurements 0-10 times in TD measurement info
-OTD-MsrsOfOtherSets ::= CHOICE {
-	identityNotPresent	OTD-Measurement,	
-	identityPresent		OTD-MeasurementWithID
-}
-
--- For this OTD measurement identity is same as the identity of BTS
--- in the first set with same sequence number
-OTD-Measurement ::= SEQUENCE {
-	nborTimeSlot	ModuloTimeSlot,
-	eotdQuality		EOTDQuality,
-	otdValue		OTDValue
-}
-
--- This measurement contains the BTS identity and measurement
-OTD-MeasurementWithID ::=SEQUENCE {
-	neighborIdentity	NeighborIdentity,
-	nborTimeSlot		ModuloTimeSlot,
-	eotdQuality			EOTDQuality,
-	otdValue			OTDValue
-}
-
-EOTDQuality ::= SEQUENCE {
-	nbrOfMeasurements	INTEGER	(0..7),
-	stdOfEOTD			INTEGER (0..31)
-}
-
-NeighborIdentity ::= CHOICE {
-	bsicAndCarrier		BSICAndCarrier,		-- BSIC and Carrier
-	ci					CellID,				-- Cell ID, LAC not needed
-	multiFrameCarrier	MultiFrameCarrier, 	-- MultiFrameOffest and BSIC
-	requestIndex		RequestIndex,		-- Index to Requested Neighbor List
-	systemInfoIndex		SystemInfoIndex,	-- Index to System info list, this type of neighbour
-											-- identity shall not be used by the MS unless it has
-											-- received the SystemInfoAssistData from the SMLC for
-											-- this cell.
-	ciAndLAC			CellIDAndLAC		-- CI and LAC
-}
-
--- Multiframe and carrier
-MultiFrameCarrier ::= SEQUENCE {
-	bcchCarrier			BCCHCarrier,
-	multiFrameOffset	MultiFrameOffset
-}
-
--- OTD measurement value for neighbour
-OTDValue ::= INTEGER (0..39999)
-
--- Location information IE
-LocationInfo ::= SEQUENCE {
-	refFrame		INTEGER (0..65535),			-- Reference Frame number
-	-- If refFrame is within (42432..65535), it shall be ignored by the receiver
-	-- in that case the MS should provide GPS TOW if available
-	gpsTOW			INTEGER (0..14399999)	OPTIONAL,	-- GPS TOW
-	fixType			FixType,
-	-- Note that applicable range for refFrame is 0 - 42431
-	-- Possible shapes carried in posEstimate are
-	-- ellipsoid point,
-	-- ellipsoid point with uncertainty circle
-	-- ellipsoid point with uncertainty ellipse
-	-- ellipsoid point with altitude and uncertainty ellipsoid
-	posEstimate		Ext-GeographicalInformation
-}
-
-FixType ::= INTEGER {
-	twoDFix (0),
-	threeDFix (1)
-} (0..1)
-
--- GPS-Measurement information
-GPS-MeasureInfo ::= SEQUENCE {
-	-- Measurement info elements
-	-- user has to make sure that in this element is number of elements
-	-- defined in reference BTS identity
-	gpsMsrSetList	SeqOfGPS-MsrSetElement	
-}
-SeqOfGPS-MsrSetElement ::= SEQUENCE (SIZE(1..3)) OF GPS-MsrSetElement
-
--- OTD measurent information 1-3 times in message
-GPS-MsrSetElement ::= SEQUENCE {
-	refFrame		INTEGER (0..65535)	OPTIONAL, 	-- Reference Frame number
-	gpsTOW			GPSTOW24b,						-- GPS TOW
-	-- Note that applicable range for refFrame is 0 - 42431
-
---N_SAT can be read from number of elements of gps-msrList
-
-	gps-msrList		SeqOfGPS-MsrElement
-}
-
--- 24 bit presentation for GPSTOW
-GPSTOW24b ::= INTEGER (0..14399999)
-
--- measured elements in measurement parameters field
-SeqOfGPS-MsrElement ::= SEQUENCE (SIZE(1..16)) OF GPS-MsrElement
-
-GPS-MsrElement ::= SEQUENCE {
-	satelliteID		SatelliteID,				-- Satellite identifier
-	cNo				INTEGER (0..63),			-- carrier noise ratio
-	doppler			INTEGER (-32768..32767), 	-- doppler, mulltiply by 0.2
-	wholeChips		INTEGER (0..1022),			-- whole value of the code phase measurement
-	fracChips		INTEGER (0..1024),			-- fractional value of the code phase measurement
-											-- a value of 1024 shall not be encoded by the sender
-											-- the receiver shall consider a value of 1024 to be
-											-- invalid data
-	mpathIndic		MpathIndic,					-- multipath indicator
-	pseuRangeRMSErr	INTEGER (0..63)				-- index		
-}
-
--- Multipath indicator
-MpathIndic ::= ENUMERATED {
-	notMeasured (0),
-	low (1),
-	medium (2),
-	high (3)
-}
-
--- Location error IE
-LocationError ::= SEQUENCE {
-	locErrorReason				LocErrorReason,
-	additionalAssistanceData	AdditionalAssistanceData	OPTIONAL,
-	...
-}
-
-LocErrorReason ::= ENUMERATED {
-	unDefined (0),	
-	notEnoughBTSs (1),
-	notEnoughSats (2),
-	eotdLocCalAssDataMissing (3),
-	eotdAssDataMissing (4),
-	gpsLocCalAssDataMissing (5),
-	gpsAssDataMissing (6),
-	methodNotSupported (7),
-	notProcessed (8),
-	refBTSForGPSNotServingBTS (9),
-	refBTSForEOTDNotServingBTS (10),
-	...,
-	notEnoughGANSSSats (11),	
- ganssAssDataMissing (12),
-	refBTSForGANSSNotServingBTS (13)
-}
-
--- exception handling:
--- an unrecognized value shall be treated the same as value 0
-
-
--- defines additional assistance data needed for any new location attempt
--- MS shall retain any assistance data already received
-AdditionalAssistanceData ::= SEQUENCE {
-	gpsAssistanceData		GPSAssistanceData		OPTIONAL,
-	extensionContainer		ExtensionContainer		OPTIONAL,
-	...,
-	ganssAssistanceData GANSSAssistanceData OPTIONAL
-}
-
-GPSAssistanceData ::= OCTET STRING (SIZE (1..maxGPSAssistanceData))
--- GPSAssistanceData has identical structure and encoding to octets 3 to n of the
--- GPS Assistance Data IE in 3GPP TS 49.031
-
-maxGPSAssistanceData	INTEGER ::= 40
-
-GANSSAssistanceData ::= OCTET STRING (SIZE (1..maxGANSSAssistanceData))
--- GANSSAssistanceData has identical structure and encoding to octets 3 to n of the
--- GANSS Assistance Data IE in 3GPP TS 49.031
-
-maxGANSSAssistanceData	INTEGER ::= 40
-
-
--- Protocol Error Causes
-ErrorCodes ::= ENUMERATED {
-	unDefined (0),
-missingComponet (1),			
-incorrectData (2),			
-missingIEorComponentElement (3),		
-messageTooShort (4),			
-unknowReferenceNumber (5),		
-...
-}
-
--- exception handling:
--- an unrecognized value shall be treated the same as value 0
-
--- GPS assistance data IE
-GPS-AssistData ::= SEQUENCE {
-	controlHeader		ControlHeader
-}
-
--- More Assistance Data To Be Sent IE
--- More Assistance Data Components On the Way indication for delivery of an entire set of assistance
--- data in multiple Assistance Data components.
-
-MoreAssDataToBeSent ::= ENUMERATED {
-	noMoreMessages (0),			-- This is the only or last Assistance Data message used to deliver
-								-- the entire set of assistance data.
-	moreMessagesOnTheWay (1)	-- The SMLC will send more Assistance Data messages or a final RRLP
-								-- Measure Position Request message to deliver the
-								-- the entire set of assistance data.
-}
-
--- Control header of the GPS assistance data
-ControlHeader ::= SEQUENCE {
-
-	-- Field type Present information
-	referenceTime		ReferenceTime		OPTIONAL,
-	refLocation			RefLocation			OPTIONAL,
-	dgpsCorrections		DGPSCorrections		OPTIONAL,
-	navigationModel		NavigationModel		OPTIONAL,
-	ionosphericModel		IonosphericModel		OPTIONAL,
-	utcModel			UTCModel			OPTIONAL,
-	almanac			Almanac			OPTIONAL,
-	acquisAssist		AcquisAssist		OPTIONAL,
-	realTimeIntegrity SeqOf-BadSatelliteSet OPTIONAL
-}
-
-ReferenceTime ::= SEQUENCE {
-	gpsTime				GPSTime,
-	gsmTime				GSMTime				OPTIONAL,
-	gpsTowAssist		GPSTOWAssist		OPTIONAL
-}
-
--- GPS Time includes week number and time-of-week (TOW)
-GPSTime ::= SEQUENCE {
-	gpsTOW23b			GPSTOW23b,
-	gpsWeek				GPSWeek
-}
-
--- GPSTOW, range 0-604799.92, resolution 0.08 sec, 23-bit presentation
-GPSTOW23b ::= INTEGER (0..7559999)
-
--- GPS week number
-GPSWeek ::= INTEGER (0..1023)
-
--- GPSTOWAssist consists of TLM message, Anti-spoof flag, Alert flag, and 2 reserved bits in TLM Word
--- for each visible satellite.
--- N_SAT can be read from number of elements in GPSTOWAssist
-GPSTOWAssist ::= SEQUENCE (SIZE(1..12)) OF GPSTOWAssistElement
-
-GPSTOWAssistElement ::= SEQUENCE {
-	satelliteID			SatelliteID,
-	tlmWord				TLMWord,
-	antiSpoof			AntiSpoofFlag,
-	alert				AlertFlag,
-	tlmRsvdBits			TLMReservedBits
-}
-
--- TLM Word, 14 bits
-TLMWord ::= INTEGER (0..16383)
-
--- Anti-Spoof flag
-AntiSpoofFlag ::= INTEGER (0..1)
-
--- Alert flag
-AlertFlag ::= INTEGER (0..1)
-
--- Reserved bits in TLM word, MSB occurs earlier in TLM Word transmitted by satellite
-TLMReservedBits ::= INTEGER (0..3)
-
-GSMTime ::= SEQUENCE {
-	bcchCarrier		BCCHCarrier,	-- BCCH carrier
-	bsic			BSIC,			-- BSIC
-	frameNumber		FrameNumber,
-	timeSlot		TimeSlot,
-	bitNumber		BitNumber
-}
-
--- Frame number
-FrameNumber ::= INTEGER (0..2097151)
-
--- Time slot number
-TimeSlot ::= INTEGER (0..7)
-
--- Bit number
-BitNumber ::= INTEGER (0..156)
-
-
--- Reference Location IE
-RefLocation ::= SEQUENCE {
-	threeDLocation			Ext-GeographicalInformation
-}
-
--- DGPS Corrections IE
-DGPSCorrections ::= SEQUENCE {
-
-	gpsTOW		INTEGER (0..604799),	-- DGPS reference time
-	status		INTEGER (0..7),
-	-- N_SAT can be read from number of elements of satList
-	satList		SeqOfSatElement 	
-}
-SeqOfSatElement ::= SEQUENCE (SIZE (1..16)) OF SatElement
-
--- number of correction for satellites
-SatElement ::= SEQUENCE {
-	satelliteID		SatelliteID,
-
-
---- Sequence number for ephemeris
-	iode 			INTEGER (0..239),
-	-- User Differential Range Error
-	udre			INTEGER (0..3),		
-
-	-- Pseudo Range Correction, range is
-	-- -655.04 - +655.04,
-	pseudoRangeCor	INTEGER (-2047..2047), 	
-
-	-- Pseudo Range Rate Correction, range is
-	-- -4.064 - +4.064,
-	rangeRateCor	INTEGER (-127..127),
-
--- Delta Pseudo Range Correction 2 	
-	deltaPseudoRangeCor2 	INTEGER (-127..127),	-- This IE shall be ignored by the receiver and
-													-- set to zero by the sender
-	-- Delta Pseudo Range Correction 2	
-	deltaRangeRateCor2		INTEGER (-7..7),		-- This IE shall be ignored by the receiver and
-													-- set to zero by the sender
-	-- Delta Pseudo Range Correction 3
-	deltaPseudoRangeCor3 	INTEGER (-127..127),	-- This IE shall be ignored by the receiver and
-													-- set to zero by the sender
-	-- Delta Pseudo Range Correction 3
-	deltaRangeRateCor3		INTEGER (-7..7)			-- This IE shall be ignored by the receiver and
-													-- set to zero by the sender
-}
-
-SatelliteID ::= INTEGER (0..63)	-- identifies satellite
-
--- Navigation Model IE
-NavigationModel ::= SEQUENCE {
-	navModelList	SeqOfNavModelElement	
-}
-
--- navigation model satellite list
-SeqOfNavModelElement ::= SEQUENCE (SIZE(1..16)) OF NavModelElement
-
-NavModelElement ::= SEQUENCE {
-	satelliteID		SatelliteID,			
-	satStatus		SatStatus		-- satellite status
-}
-
--- the Status of the navigation model
-SatStatus ::= CHOICE {
-	-- New satellite, new Navigation Model
-	newSatelliteAndModelUC	UncompressedEphemeris,
-
-	-- Existing satellite, Existing Navigation Model
-	oldSatelliteAndModel	NULL,
-
-	-- Existing satellite, new Navigation Model
-	newNaviModelUC			UncompressedEphemeris,
-	...
-}
-
--- Uncompressed satellite emhemeris and clock corrections
-UncompressedEphemeris ::= SEQUENCE {
-	ephemCodeOnL2	INTEGER (0..3),
-	ephemURA		INTEGER (0..15),
-	ephemSVhealth	INTEGER (0..63),
-	ephemIODC		INTEGER	(0..1023),
-	ephemL2Pflag	INTEGER (0..1),
-	ephemSF1Rsvd	EphemerisSubframe1Reserved,
-	ephemTgd		INTEGER (-128..127),
-	ephemToc		INTEGER (0..37799),
-	ephemAF2		INTEGER (-128..127),
-	ephemAF1		INTEGER (-32768..32767),
-	ephemAF0		INTEGER (-2097152..2097151),
-	ephemCrs		INTEGER (-32768..32767),
-	ephemDeltaN		INTEGER (-32768..32767),
-	ephemM0			INTEGER (-2147483648..2147483647),
-	ephemCuc		INTEGER (-32768..32767),
-	ephemE			INTEGER (0..4294967295),
-	ephemCus		INTEGER (-32768..32767),
-	ephemAPowerHalf	INTEGER (0..4294967295),
-	ephemToe		INTEGER (0..37799),
-	ephemFitFlag	INTEGER (0..1),
-	ephemAODA		INTEGER (0..31),
-	ephemCic		INTEGER (-32768..32767),
-	ephemOmegaA0	INTEGER (-2147483648..2147483647),
-	ephemCis		INTEGER (-32768..32767),
-	ephemI0			INTEGER (-2147483648..2147483647),
-	ephemCrc		INTEGER (-32768..32767),
-	ephemW			INTEGER (-2147483648..2147483647),
-	ephemOmegaADot	INTEGER (-8388608..8388607),
-	ephemIDot		INTEGER (-8192..8191)
-}
-
--- Reserved bits in subframe 1 of navigation message
-EphemerisSubframe1Reserved ::= SEQUENCE {
-	reserved1		INTEGER (0..8388607),	-- 23-bit field
-	reserved2		INTEGER (0..16777215),	-- 24-bit field
-	reserved3		INTEGER (0..16777215),	-- 24-bit field
-	reserved4		INTEGER (0..65535)		-- 16-bit field
-}
-
--- Ionospheric Model IE
-IonosphericModel ::= SEQUENCE {
-	alfa0			INTEGER (-128..127),
-	alfa1			INTEGER (-128..127),
-	alfa2			INTEGER (-128..127),
-	alfa3			INTEGER (-128..127),
-	beta0			INTEGER (-128..127),
-	beta1			INTEGER (-128..127),
-	beta2			INTEGER (-128..127),
-	beta3			INTEGER (-128..127)
-}
-
--- Universal Time Coordinate Model
-UTCModel ::= SEQUENCE {
-	utcA1			INTEGER (-8388608..8388607),
-	utcA0			INTEGER (-2147483648..2147483647),
-	utcTot			INTEGER (0..255),
-	utcWNt			INTEGER (0..255),
-	utcDeltaTls		INTEGER (-128..127),
-	utcWNlsf		INTEGER (0..255),
-	utcDN			INTEGER (-128..127),
-	utcDeltaTlsf	INTEGER (-128..127)
-}
-
--- Almanac, Long term model
--- NOTE: These are parameters are subset of the ephemeris
--- NOTE: But with reduced resolution and accuracy
-Almanac ::= SEQUENCE {
-	alamanacWNa		INTEGER (0..255),	-- Once per message
-
-	-- navigation model satellite list.
-	-- The size of almanacList is actually Nums_Sats_Total field
-	almanacList		SeqOfAlmanacElement		
-}
-SeqOfAlmanacElement ::= SEQUENCE (SIZE(1..64)) OF AlmanacElement
-
--- Almanac info once per satellite
-AlmanacElement ::= SEQUENCE {
-	satelliteID			SatelliteID,
-	almanacE			INTEGER (0..65535),
-	alamanacToa			INTEGER (0..255),
-	almanacKsii			INTEGER (-32768..32767),
-	almanacOmegaDot		INTEGER (-32768..32767),
-	almanacSVhealth		INTEGER (0..255),
-	almanacAPowerHalf	INTEGER (0..16777215),
-	almanacOmega0		INTEGER (-8388608..8388607),
-	almanacW			INTEGER (-8388608..8388607),
-	almanacM0			INTEGER (-8388608..8388607),
-	almanacAF0			INTEGER (-1024..1023),
-	almanacAF1			INTEGER (-1024..1023)
-}
-
--- Acquisition Assistance
-AcquisAssist ::= SEQUENCE {
-
-	-- Number of Satellites can be read from acquistList
-	timeRelation	TimeRelation,
-
-	-- Acquisition assistance list
-	-- The size of Number of Satellites is actually Number of Satellites field
-	acquisList		SeqOfAcquisElement		
-}
-SeqOfAcquisElement ::= SEQUENCE (SIZE(1..16)) OF AcquisElement
-
--- the relationship between GPS time and air-interface timing
-TimeRelation ::= SEQUENCE {
-	--
-	gpsTOW		GPSTOW23b,		-- 23b presentation
-	gsmTime		GSMTime		OPTIONAL
-}
-
--- data occuring per number of satellites
-AcquisElement ::= SEQUENCE {
-	svid					SatelliteID,
-
-	-- Doppler 0th order term,
-	-- -5120.0 - 5117.5 Hz (= -2048 - 2047 with 2.5 Hz resolution)
-	doppler0				INTEGER (-2048..2047),	
-	addionalDoppler			AddionalDopplerFields	OPTIONAL,
-	codePhase				INTEGER (0..1022),	-- Code Phase
-	intCodePhase			INTEGER (0..19),	-- Integer Code Phase
-	gpsBitNumber			INTEGER (0..3), 	-- GPS bit number
-	codePhaseSearchWindow	INTEGER (0..15),	-- Code Phase Search Window
-	addionalAngle			AddionalAngleFields		OPTIONAL
-}
-
-AddionalDopplerFields ::= SEQUENCE {
-	-- Doppler 1st order term, -1.0 - +0.5 Hz/sec
- -- (= -42 + (0 to 63) with 1/42 Hz/sec. resolution)
-	doppler1				INTEGER (0..63),
-	dopplerUncertainty		INTEGER (0..7)
- -- a sender shall not encode any DopplerUncertainty value in the range 5 to 7
- -- a receiver shall ignore any value between 5 and 7.
-}
-
-AddionalAngleFields	::= SEQUENCE {
-	-- azimuth angle, 0 - 348.75 deg (= 0 - 31 with 11.25 deg resolution)
-	azimuth					INTEGER (0..31),
-	-- elevation angle, 0 - 78.75 deg (= 0 - 7 with 11.25 deg resolution)
-	elevation				INTEGER (0..7)
-}
-
--- Real-Time Integrity
--- number of bad satellites can be read from this element
-SeqOf-BadSatelliteSet ::= SEQUENCE (SIZE(1..16)) OF SatelliteID
-
--- Extension Elements
-
--- Release 98 Extensions here
-Rel98-MsrPosition-Req-Extension ::= SEQUENCE {
-	rel98-Ext-ExpOTD			Rel98-Ext-ExpOTD		OPTIONAL,	-- ExpectedOTD extension
-	..., 
- gpsTimeAssistanceMeasurementRequest NULL OPTIONAL, 
- gpsReferenceTimeUncertainty GPSReferenceTimeUncertainty OPTIONAL
-
--- Further R98 extensions here
-}
-Rel98-AssistanceData-Extension ::= SEQUENCE {
-	rel98-Ext-ExpOTD			Rel98-Ext-ExpOTD		OPTIONAL,	-- ExpectedOTD extension
-	..., 
- gpsTimeAssistanceMeasurementRequest NULL OPTIONAL,
- gpsReferenceTimeUncertainty GPSReferenceTimeUncertainty OPTIONAL
-
--- Further R98 extensions here
-}
-
--- Release 98 ExpOTD extension
-Rel98-Ext-ExpOTD ::= SEQUENCE {
--- If MsrAssistBTS is included in message, msrAssistData-R98-ExpOTD shall be included.
-	msrAssistData-R98-ExpOTD			MsrAssistData-R98-ExpOTD			OPTIONAL,
-
--- If SystemInfoAssistaData is included in message, systemInfoAssistData-R98-ExpOTD shall be
--- included.
-	systemInfoAssistData-R98-ExpOTD	SystemInfoAssistData-R98-ExpOTD	OPTIONAL
-}
-
--- MsrAssistData R98 extension
-MsrAssistData-R98-ExpOTD ::= SEQUENCE {
-	 msrAssistList-R98-ExpOTD			 SeqOfMsrAssistBTS-R98-ExpOTD
-}
-
--- Indexes in SeqOfMsrAssistBTS-R98-ExpOTD refer to SeqOfMsrAssistBTS
--- If the index exceeds the SegOfMsrAssistBTS range or if there is other
--- inconsistencies between the BTS indices, the MS shall apply protocol
--- error cause incorrectData
-SeqOfMsrAssistBTS-R98-ExpOTD ::= SEQUENCE (SIZE(1..15)) OF MsrAssistBTS-R98-ExpOTD
-
--- This element completes MsrAssistBTS IE
-MsrAssistBTS-R98-ExpOTD ::= SEQUENCE {
-	expectedOTD				ExpectedOTD,
-	expOTDUncertainty		ExpOTDUncertainty
-}
-
--- SystemInfoAssistData R98 extension
-SystemInfoAssistData-R98-ExpOTD ::= SEQUENCE {
-	systemInfoAssistListR98-ExpOTD 	SeqOfSystemInfoAssistBTS-R98-ExpOTD
-}
-
--- SeqOfSystemInfoAssistBTS-R98-ExpOTD index refer to SeqOfSystemInfoAssistBTS
--- If the index exceeds the SegOfSystemInfoAssistBTS range or if there is other
--- inconsistencies between the BTS indices, the MS shall apply protocol
--- error cause incorrectData
-SeqOfSystemInfoAssistBTS-R98-ExpOTD ::= SEQUENCE (SIZE(1..32)) OF SystemInfoAssistBTS-R98-ExpOTD
-
--- whether n.th is present or not ?
-SystemInfoAssistBTS-R98-ExpOTD ::= CHOICE {
-	notPresent		NULL,
-	present			AssistBTSData-R98-ExpOTD
-}
-
--- This element completes AssistBTSData IE
-AssistBTSData-R98-ExpOTD ::= SEQUENCE {
-	expectedOTD				ExpectedOTD,
-	expOTDuncertainty		ExpOTDUncertainty	-- Uncertainty of expected OTD
-}
-
--- Expected OTD value between nbor base station and reference BTS
--- at MS's current estimated location.
-ExpectedOTD ::= INTEGER (0..1250)
--- The ExpectedOTD value 1250 shall not be encoded by the transmitting entity and
--- shall be treated by the receiving entity as 0.
--- Uncertainty of Exptected OTD in bits
-ExpOTDUncertainty ::= INTEGER(0..7)
-
--- Release 98 extensions
-
-GPSReferenceTimeUncertainty ::= INTEGER (0 .. 127) -- Coding according to Annex
-
-GPSTimeAssistanceMeasurements ::= SEQUENCE {
- referenceFrameMSB INTEGER (0 .. 63), -- MSB of frame number
- gpsTowSubms INTEGER (0 .. 9999) OPTIONAL, -- in units of 100ns, for MS based AGPS
- deltaTow INTEGER (0 .. 127) OPTIONAL, -- for MS assisted AGPS
- gpsReferenceTimeUncertainty GPSReferenceTimeUncertainty OPTIONAL
-}
-
-Rel-98-MsrPosition-Rsp-Extension ::= SEQUENCE {
-
-	-- First extension to Release 98
-	rel-98-Ext-MeasureInfo	SEQUENCE {
-		otd-MeasureInfo-R98-Ext	OTD-MeasureInfo-R98-Ext		OPTIONAL
-	},
-	..., 
- timeAssistanceMeasurements GPSTimeAssistanceMeasurements OPTIONAL 
- -- Further R98 extensions here
-}
-
--- This is an addition to OTD-MeasureInfo element defined in original message,
--- If OTD-MeasureInfo is absent, or if one or more OTD-MsrElementRest are present
--- OTD-MeasureInfo-R98-Ext shall be absent.
--- OTD-MeasureInfo-R98-Ext
-OTD-MeasureInfo-R98-Ext ::= SEQUENCE {
-	-- Measurement info elements
-	otdMsrFirstSets-R98-Ext		OTD-MsrElementFirst-R98-Ext
-}
-
--- OTD measurement information Ext for the first set only
-OTD-MsrElementFirst-R98-Ext ::= SEQUENCE {
-	-- additional measured neighbors in OTD measurements
-	otd-FirstSetMsrs-R98-Ext 	SeqOfOTD-FirstSetMsrs-R98-Ext 	OPTIONAL
-}
-SeqOfOTD-FirstSetMsrs-R98-Ext ::= SEQUENCE (SIZE(1..5)) OF OTD-FirstSetMsrs
-
-Rel-5-MsrPosition-Rsp-Extension ::= SEQUENCE {
-
-	extended-reference	Extended-reference 	OPTIONAL,
-	-- The extended-reference shall be included by the MS if and only if previously
-	-- received from the SMLC in a Measure Position Request. When included, the value sent
-	-- by the MS shall equal the value received from the SMLC.
-
-	-- extension to Release 5, for RRLP pseudo-segmentation here
-	otd-MeasureInfo-5-Ext	OTD-MeasureInfo-5-Ext	OPTIONAL,
-	ulPseudoSegInd			UlPseudoSegInd			OPTIONAL,	-- Included when uplink RRLP
-	-- Pseudo-segmentation is used, not included when no uplink pseudo-segmentation is used
-	...
-					-- Possibly more extensions for Release 5 here later
-}
-
-Extended-reference ::= SEQUENCE {
-	smlc-code			INTEGER (0..63),
-	transaction-ID		INTEGER (0..262143)
-}
-
-OTD-MeasureInfo-5-Ext ::= SeqOfOTD-MsrElementRest
-	-- if more than one measurement sets are present this element is repeated
-	-- NumberOfSets - 1 (-1 = first set) combined in OTD-MeasureInfo-5-Ext and
-	-- OTD-MeasureInfo (e.g. if NumberOfSets is 3, then one otdMsrRestSets may
-	-- be sent in OTD-MeasureInfo-5-Ext and one in OTD-MeasureInfo)
-
--- First part of Uplink RRLP Pseudo-segmentation indication, possibly more may be defined
--- in the future for segmentation with more than two segments.
-UlPseudoSegInd ::= ENUMERATED {
-	firstOfMany (0),
-	secondOfMany(1)
-}
-
-Rel5-MsrPosition-Req-Extension ::= SEQUENCE {
-	extended-reference			Extended-reference,
-	...
-	-- Possibly more extensions for Release 5 here later
-}
-
-Rel5-AssistanceData-Extension ::= SEQUENCE {
-	extended-reference			Extended-reference,
-	...
-
--- Possibly more extensions for Release 5 here later
-}
-
-Rel-5-ProtocolError-Extension::= SEQUENCE {
-	extended-reference			Extended-reference 	OPTIONAL,
-	-- The extended-reference shall be included by the MS if and only if previously
-	-- received from the SMLC.
-	-- When included, the value sent by the MS shall equal the value received from the SMLC.
-	...
-
-	-- Possibly more extensions for Release 5 here later
-}
-
--- Release 7 Extensions here
-
-Rel7-MsrPosition-Req-Extension ::= SEQUENCE {
-velocityRequested		 NULL		 OPTIONAL,
- ganssPositionMethod GANSSPositioningMethod OPTIONAL,
- ganss-AssistData GANSS-AssistData OPTIONAL,
- ganssCarrierPhaseMeasurementRequest NULL OPTIONAL,
- ganssTODGSMTimeAssociationMeasurementRequest NULL OPTIONAL,
-requiredResponseTime	RequiredResponseTime	OPTIONAL,
-	...
-	-- Further Release 7 extentions here
-}
-
--- additional satellite systems may be added in future versions of the protocol
-GANSSPositioningMethod ::= BIT STRING {
-	gps (0),
-	galileo (1)} (SIZE (2..16))
-
-GANSS-AssistData ::= SEQUENCE {
-	ganss-controlHeader	GANSS-ControlHeader
-}
-
-GANSS-ControlHeader ::= SEQUENCE {
- ganssCommonAssistData GANSSCommonAssistData OPTIONAL,
- ganssGenericAssistDataList SeqOfGANSSGenericAssistDataElement OPTIONAL
-}
-
--- GANSS Common Assistance Data Elements
-GANSSCommonAssistData ::= SEQUENCE {
-	ganssReferenceTime		 GANSSReferenceTime		 OPTIONAL,
-	ganssRefLocation			GANSSRefLocation		 OPTIONAL,
-	ganssIonosphericModel		GANSSIonosphericModel	 OPTIONAL,
-	...
-}
-
--- List of GANSS Generic Assistance Data Elements, up to 8 GANSS
-SeqOfGANSSGenericAssistDataElement ::= SEQUENCE (SIZE (1..8)) OF GANSSGenericAssistDataElement
-
--- GANSS Generic Assistance Data Elements
-GANSSGenericAssistDataElement ::= SEQUENCE {
- ganssID INTEGER (0..7) OPTIONAL, -- Coding according to Annex
- ganssTimeModel SeqOfGANSSTimeModel OPTIONAL,
-	ganssDiffCorrections		 GANSSDiffCorrections	 OPTIONAL,
-	ganssNavigationModel		 GANSSNavModel OPTIONAL,
-	ganssRealTimeIntegrity	 GANSSRealTimeIntegrity	 OPTIONAL,
-	ganssDataBitAssist			 GANSSDataBitAssist		 OPTIONAL,
-	ganssRefMeasurementAssist	 GANSSRefMeasurementAssist OPTIONAL,
- ganssAlmanacModel GANSSAlmanacModel OPTIONAL,
- ganssUTCModel GANSSUTCModel OPTIONAL,
-	...
-}
-
--- GANSS COMMON ASSISTANCE DATA ELEMENTS
-
--- GANSS Reference Time IE
-GANSSReferenceTime ::= SEQUENCE {
-	ganssRefTimeInfo			 GANSSRefTimeInfo,
-	ganssTOD-GSMTimeAssociation GANSSTOD-GSMTimeAssociation OPTIONAL
-}
-
--- GANSS Reference Time includes GANSS TOD, GANSS Day, uncertainty
-GANSSRefTimeInfo ::= SEQUENCE {
-	ganssDay			 INTEGER(0 .. 8191) OPTIONAL,
- ganssTOD GANSSTOD,
-	ganssTODUncertainty	 GANSSTODUncertainty OPTIONAL,
- ganssTimeID INTEGER (0 .. 7) OPTIONAL
-}
-
--- GANSS TOD integer seconds
-GANSSTOD ::= INTEGER (0 .. 86399)
-
--- GANSS TOD uncertainty
-GANSSTODUncertainty ::= INTEGER (0 .. 127) -- Coding according to Annex
-
--- GANSS TOD-GSM Time association 
-GANSSTOD-GSMTimeAssociation ::= SEQUENCE {
-	bcchCarrier		BCCHCarrier,	-- BCCH carrier
-	bsic			BSIC,			-- BSIC
-	frameNumber		FrameNumber,
-	timeSlot		TimeSlot,
-	bitNumber		BitNumber,
- frameDrift FrameDrift OPTIONAL
-}
-
--- Frame drift
-FrameDrift ::= INTEGER(-64 .. 63)
-
--- GANSS Reference Location IE
-GANSSRefLocation ::= SEQUENCE {
-	threeDLocation			Ext-GeographicalInformation
-}
-
--- GANSS Ionospheric Model IE
--- GANSS Ionospheric Model consists of NeQuick model parameters and storm flags
-
-GANSSIonosphericModel ::= SEQUENCE {
- ganssIonoModel GANSSIonosphereModel,
- ganssIonoStormFlags GANSSIonoStormFlags OPTIONAL,
- ...
-}
-
--- GANSS ionosphere model. Coding according to Annex 
-GANSSIonosphereModel ::= SEQUENCE {
- ai0 INTEGER (0 .. 4095),
- ai1 INTEGER (0 .. 4095),
- ai2 INTEGER (0 .. 4095)
-}
-
--- GANSS ionosphere storm flags
-GANSSIonoStormFlags ::= SEQUENCE {
-	ionoStormFlag1	INTEGER (0 .. 1),
-	ionoStormFlag2	INTEGER (0 .. 1),
-	ionoStormFlag3	INTEGER (0 .. 1),
-	ionoStormFlag4	INTEGER (0 .. 1),
-	ionoStormFlag5	INTEGER (0 .. 1)
-}
-
--- GANSS GENERIC ASSISTANCE DATA ELEMENTS
-
--- GANSS Time Model IE consists of time offset and first and second order parameters to relate GNSS
--- specific system time to selected time reference
-SeqOfGANSSTimeModel ::= SEQUENCE (SIZE(1..7)) OF GANSSTimeModelElement
-
-GANSSTimeModelElement ::= SEQUENCE {
-	ganssTimeModelRefTime		INTEGER(0 .. 65535),
-	tA0		 TA0,
-	tA1		 TA1 OPTIONAL,
-	tA2		 TA2 OPTIONAL,
- gnssTOID INTEGER (0 .. 7),
- weekNumber INTEGER (0 .. 8191) OPTIONAL 
-}
-
--- GANSS time model parameter A0
-TA0 ::= INTEGER (-2147483648 .. 2147483647)
-
--- GANSS time model parameter A1
-TA1 ::= INTEGER (-8388608 .. 8388607)
-
--- GANSS time model parameter A2
-TA2 ::= INTEGER (-64 .. 63)
-
--- DGANSS Corrections IE
-GANSSDiffCorrections ::= SEQUENCE {
-	dganssRefTime		INTEGER (0 .. 119),	 -- DGANSS reference time
-
-	-- N_SGN_TYPE can be read from number of elements of sgnTypeList
-	sgnTypeList		 SeqOfSgnTypeElement
-}
-
-SeqOfSgnTypeElement ::= SEQUENCE (SIZE (1..3)) OF SgnTypeElement -- max three signals per GNSS
-
--- DGANSS signal type element, once per GNSS signal type included in DGANSS
-SgnTypeElement ::= SEQUENCE {
-	ganssSignalID		 GANSSSignalID OPTIONAL, -- signal type identity
- ganssStatusHealth INTEGER (0 .. 7),
-	-- N_SGN can be read from number of elements of dganssSgnList
- dganssSgnList SeqOfDGANSSSgnElement
-}
-
-GANSSSignalID ::= INTEGER (0 .. 3)	-- Coding according to Annex
-SeqOfDGANSSSgnElement ::= SEQUENCE (SIZE (1..16)) OF DGANSSSgnElement
-
--- number of correction for signals
-DGANSSSgnElement ::= SEQUENCE {
-	svID		 SVID, -- Satellite identity
-
---- Sequence number for GANSS Navigation Model that matches the DGANSS correction set
-	iod 			INTEGER (0 .. 1023),
-
-	-- User Differential Range Error
-	udre			INTEGER (0..3),		
-
-	-- Pseudo Range Correction, range is
-	-- -655.04 - +655.04,
-	pseudoRangeCor	INTEGER (-2047..2047), 	
-
-	-- Pseudo Range Rate Correction, range is
-	-- -4.064 - +4.064,
-	rangeRateCor	INTEGER (-127..127)
-}
-
-SVID ::= INTEGER (0 .. 63)	-- Coding according to Annex
-
--- GANSS Navigation Model IE
-GANSSNavModel ::= SEQUENCE {
- nonBroadcastIndFlag INTEGER (0 .. 1),
- toeMSB INTEGER (0 .. 31) OPTIONAL, -- 5 MSB of toe and toc 
- eMSB INTEGER (0 .. 127) OPTIONAL,
- sqrtAMBS INTEGER (0 .. 63) OPTIONAL,
-	ganssSatelliteList SeqOfGANSSSatelliteElement
-}
-
-SeqOfGANSSSatelliteElement ::= SEQUENCE (SIZE(1..32)) OF GANSSSatelliteElement
-
-GANSSSatelliteElement ::= SEQUENCE {
-	svID SVID,
- svHealth INTEGER (-7 .. 13), -- Coding according to Annex
- iod INTEGER (0 .. 1023), -- Coding according to Annex
- ganssClockModel GANSSClockModel, 
- ganssOrbitModel GANSSOrbitModel, 
- ...
-}
-
--- GANSS orbit model for the GNSS satellite according to the choice
-GANSSOrbitModel ::= CHOICE {
-	keplerianSet	 NavModel-KeplerianSet,	
- ...
-}
-
--- Navigation model in Keplerian parameters
-NavModel-KeplerianSet ::= SEQUENCE {
- keplerToeLSB INTEGER (0 .. 511), -- 9LSB are given in GANSSNavigationModel
-	keplerW			 INTEGER (-2147483648..2147483647),
-	keplerDeltaN	 INTEGER (-32768..32767),
-	keplerM0		 INTEGER (-2147483648..2147483647),
-	keplerOmegaDot	 INTEGER (-8388608..8388607),
-	keplerELSB 	 INTEGER (0..33554431),
-	keplerIDot		 INTEGER (-8192..8191),
-	keplerAPowerHalfLSB INTEGER (0.. 67108863),
-	keplerI0		 INTEGER (-2147483648..2147483647),
-	keplerOmega0 INTEGER (-2147483648..2147483647),
-	keplerCrs		 INTEGER (-32768..32767),
-	keplerCis		 INTEGER (-32768..32767),
-	keplerCus		 INTEGER (-32768..32767),
-	keplerCrc		 INTEGER (-32768..32767),
-	keplerCic		 INTEGER (-32768..32767),
-	keplerCuc		 INTEGER (-32768..32767)
-}
-
--- GANSS clock model for the GNSS satellite according to the choice
-GANSSClockModel ::= CHOICE {
-	standardClockModelList	 SeqOfStandardClockModelElement,	
- ...
-}
-
-SeqOfStandardClockModelElement ::= SEQUENCE (SIZE(1..2)) OF StandardClockModelElement
-
-StandardClockModelElement ::= SEQUENCE {
- stanClockTocLSB INTEGER (0 .. 511), -- 9LSB of time of clock
- stanClockAF2 INTEGER (-2048 .. 2047), 
- stanClockAF1 INTEGER (-131072 .. 131071), 
- stanClockAF0 INTEGER (-134217728 .. 134217727),
- stanClockTgd INTEGER (-512 .. 511) OPTIONAL,
- stanModelID INTEGER (0 .. 1) OPTIONAL,
- ...
-} 
-
--- GANSS Real-Time Integrity IE
-GANSSRealTimeIntegrity ::= SEQUENCE {
- -- list of bad signals
- -- NBS can be read from number of elements in SeqOf-BadSignalSet
- ganssBadSignalList SeqOfBadSignalElement
-}
-
-SeqOfBadSignalElement ::= SEQUENCE (SIZE(1..16)) OF BadSignalElement
-
-BadSignalElement ::= SEQUENCE {
- badSVID SVID, -- Coding according to Annex
- badSignalID INTEGER (0 .. 3) OPTIONAL -- Coding according to Annex
-}
-
-
--- GANSS Data Bit Assistance IE
-GANSSDataBitAssist ::= SEQUENCE {
- ganssTOD INTEGER (0 .. 59),
- svID SVID,
- ganssDataTypeID INTEGER (0 .. 2), -- Coding according to Annex
- -- list of navigation data bits
- -- N_BIT can be read from number of elements in SeqOf-DataBits
- ganssDataBits SeqOf-GANSSDataBits
-}
-
-SeqOf-GANSSDataBits ::= SEQUENCE (SIZE(1 .. 1024)) OF GANSSDataBit
-GANSSDataBit ::= INTEGER(0 .. 1)
-
--- GANSS Reference Measurement Assistance IE
--- Code and Doppler assistance from the network. 
-GANSSRefMeasurementAssist ::= SEQUENCE {
- ganssSignalID INTEGER (0 .. 3) OPTIONAL, -- Coding according to Annex
- ganssRefMeasAssitList SeqOfGANSSRefMeasurementElement
-}
-
-SeqOfGANSSRefMeasurementElement ::= SEQUENCE (SIZE(1 .. 16)) OF GANSSRefMeasurementElement
-
-GANSSRefMeasurementElement ::= SEQUENCE {
- svID SVID,
-	-- Doppler 0th order term,
-	-- -1024 m/s to 1023.5 m/s with 0.5 m/s resolution)
-	doppler0				INTEGER (-2048 .. 2047),	-- Coding according to Annex
-	additionalDoppler		AdditionalDopplerFields	 OPTIONAL,
-	codePhase				INTEGER (0 .. 1022),	 -- Code Phase in ms
-	intCodePhase			INTEGER (0 .. 127),	 -- Integer Code Phase in ms
-	codePhaseSearchWindow	INTEGER (0 .. 31),	 -- Code Phase Search Window, see Annex
-	additionalAngle			AddionalAngleFields		 OPTIONAL,
- ...
-}
-
-AdditionalDopplerFields ::= SEQUENCE {
-	-- Doppler 1st order term, -0.2 - +0.1 m/s2
-	doppler1				INTEGER (0..63),
-	dopplerUncertainty		INTEGER (0..4)
-}
-
--- GANSS Almanac Model IE
-GANSSAlmanacModel ::= SEQUENCE {
- weekNumber INTEGER (0 .. 255),
- svIDMask SVIDMASK,
- toa INTEGER (0 .. 255) OPTIONAL,
- ioda INTEGER (0 .. 3) OPTIONAL,
- ganssAlmanacList SeqOfGANSSAlmanacElement
-}
-
--- SV ID Mask, LSB for ID 1 and MSB for ID 36
-SVIDMASK ::= BIT STRING (SIZE (1..36))
-
-SeqOfGANSSAlmanacElement ::= SEQUENCE (SIZE(1 .. 36)) OF GANSSAlmanacElement
-
--- GANSS Almanac Model 
-GANSSAlmanacElement ::= CHOICE {
-	keplerianAlmanacSet	 Almanac-KeplerianSet,	
- ...
-}
-
--- Almanac parameters according to Keplerian parameters
-Almanac-KeplerianSet ::= SEQUENCE {
- 	kepAlmanacE			 INTEGER (0 .. 2047),
-	kepAlmanacDeltaI		INTEGER (-1024 .. 1023),
-	kepAlmanacOmegaDot		INTEGER (-1024 .. 1023),
- kepSVHealth INTEGER (0 .. 15), -- Coding according to Annex
-	kepAlmanacAPowerHalf	INTEGER (-65536 .. 65535),
-	kepAlmanacOmega0		INTEGER (-32768 .. 32767),
-	kepAlmanacW			 INTEGER (-32768 .. 32767),
-	kepAlmanacM0			INTEGER (-32768 .. 32767),
-	kepAlmanacAF0			INTEGER (-8192 .. 8191),
-	kepAlmanacAF1			INTEGER (-1024..1023)
-}
-
--- GANSS Universal Time Coordinate Model
-GANSSUTCModel ::= SEQUENCE {
-	ganssUtcA1			INTEGER (-8388608..8388607),
-	ganssUtcA0			INTEGER (-2147483648..2147483647),
-	ganssUtcTot			INTEGER (0..255),
-	ganssUtcWNt			INTEGER (0..255),
-	ganssUtcDeltaTls	INTEGER (-128..127),
-	ganssUtcWNlsf		INTEGER (0..255),
-	ganssUtcDN			INTEGER (-128..127),
-	ganssUtcDeltaTlsf	INTEGER (-128..127)
-}
-
---Required Measurement Request Response Time, range is 1 to 128 seconds. 
-RequiredResponseTime ::= INTEGER  (1..128)
-
-Rel-7-MsrPosition-Rsp-Extension ::= SEQUENCE {
-
-	velEstimate 	VelocityEstimate OPTIONAL,
- -- Horizontal Velocity
- -- Horizontal with Vertical Velocity
- -- Horizontal Velocity with Uncertainty
- -- Horizontal with Vertical Velocity and Uncertainty
- ganssLocationInfo GANSSLocationInfo OPTIONAL,
- ganssMeasureInfo GANSSMeasureInfo OPTIONAL,
-	...
--- Further Release 7 extensions here
-}
-
--- GANSS Location Information contains location estimate, time stamp with uncertainty 
--- and optionally Reference Frame field
-GANSSLocationInfo ::= SEQUENCE {
- referenceFrame ReferenceFrame OPTIONAL, -- Reference Frame Number
- ganssTODm GANSSTODm OPTIONAL, -- GNSS TOD modulo
- ganssTODFrac INTEGER (0 .. 16384) OPTIONAL, -- Coding according to Annex
-	ganssTODUncertainty GANSSTODUncertainty OPTIONAL, -- Coding according to Annex
- ganssTimeID INTEGER (0 .. 3) OPTIONAL, -- Coding according to Annex
-	fixType			 FixType,
- posData PositionData,
- stationaryIndication INTEGER(0 .. 1) OPTIONAL, -- '0' if moving or motion not known 
-	-- Possible shapes carried in posEstimate are
-	-- ellipsoid point,
-	-- ellipsoid point with uncertainty circle
-	-- ellipsoid point with uncertainty ellipse
-	-- ellipsoid point with altitude and uncertainty ellipsoid
-	posEstimate		 Ext-GeographicalInformation,
- ...
-}
-
-PositionData ::= BIT STRING {
- e-otd(0),
-	gps (1),
-	galileo (2) } (SIZE (3..16))
-
-
--- GANSS TOD modulo 1 hour
-GANSSTODm ::= INTEGER (0 .. 3599999)
-
-ReferenceFrame ::= SEQUENCE {
- referenceFN INTEGER (0 .. 65535),
-	-- Note that applicable range for referenceFN is 0 - 42431
- referenceFNMSB INTEGER (0 .. 63) OPTIONAL -- MSB of Reference Frame Number
-}
-
-
-
--- GANSS Measurement Information 
-GANSSMeasureInfo ::= SEQUENCE {
-	-- Measurement info elements
-	-- user has to make sure that in this element is number of elements
-	-- defined in reference BTS identity
- ganssMsrSetList SeqOfGANSS-MsrSetElement
-}
-SeqOfGANSS-MsrSetElement ::= SEQUENCE (SIZE(1..3)) OF GANSS-MsrSetElement
-
--- GANSS measurement information 1-3 times in a message
-GANSS-MsrSetElement ::= SEQUENCE {
- referenceFrame ReferenceFrame OPTIONAL, -- Reference Frame Number
- ganssTODm GANSSTODm OPTIONAL, -- GANSS TOD modulo
- deltaGNASSTOD INTEGER (0 .. 127) OPTIONAL,
-	ganssTODUncertainty GANSSTODUncertainty OPTIONAL, -- Coding accoring to Annex
-
- --N_SGN_TYPE can be read from number of elements of SeqOfGANSS-SgnTypeElement
- ganss-SgnTypeList SeqOfGANSS-SgnTypeElement
-}
-
--- Measurements can be returned up to 6 different signal types 
-SeqOfGANSS-SgnTypeElement ::= SEQUENCE (SIZE(1..6)) OF GANSS-SgnTypeElement
-
-GANSS-SgnTypeElement ::= SEQUENCE {
-	ganssSignalID		INTEGER (0 .. 15), -- Coding accroding to Annex
- --N_SGN can be read from number of elements of SeqOfGANSS-SgnElement
- ganss-SgnList SeqOfGANSS-SgnElement
-}
-
--- Measurements can be returned up to 16 per signal types 
-SeqOfGANSS-SgnElement ::= SEQUENCE (SIZE(1..16)) OF GANSS-SgnElement
-
-
-GANSS-SgnElement ::= SEQUENCE {
- svID SVID,
- cNo INTEGER (0 .. 63),
- mpathDet MpathIndic, -- Coding according to Annex
- carrierQualityInd INTEGER (0 .. 3) OPTIONAL, -- Coding according to Annex
- codePhase INTEGER (0 .. 2097151),
- integerCodePhase INTEGER (0 .. 63) OPTIONAL,
- codePhaseRMSError INTEGER (0..63), -- Coding accoring to Annex
- doppler INTEGER (-32768 .. 32767) OPTIONAL,
- adr INTEGER (0 .. 33554431) OPTIONAL
-}
-
-Rel7-AssistanceData-Extension ::= SEQUENCE {
- ganss-AssistData GANSS-AssistData OPTIONAL,
- ganssCarrierPhaseMeasurementRequest NULL OPTIONAL,
- ganssTODGSMTimeAssociationMeasurementRequest NULL OPTIONAL,
-	...
--- Possibly more extensions for Release 7 here
-}
-
-END
diff --git a/rrlp-ephemeris/asn1/RRLP-Messages.asn b/rrlp-ephemeris/asn1/RRLP-Messages.asn
deleted file mode 100644
index 79140e2..0000000
--- a/rrlp-ephemeris/asn1/RRLP-Messages.asn
+++ /dev/null
@@ -1,38 +0,0 @@
--- RRLP-Messages.asn
--- $Id$
--- Taken from 3GPP TS 44.031 V7.4.0 (2007-03)
--- http://www.3gpp.org/ftp/Specs/archive/44_series/44.031/44031-740.zip/44031-740.doc
---
--- 3.1 General Format of RRLP Message
---
-
-RRLP-Messages
--- { RRLP-messages }
-
-DEFINITIONS AUTOMATIC TAGS ::=
-
-BEGIN
-
-IMPORTS
-	MsrPosition-Req, MsrPosition-Rsp, AssistanceData,
-	ProtocolError
-FROM
-	RRLP-Components 	-- { RRLP-Components }
-;
-
-PDU ::= SEQUENCE {
-	referenceNumber			INTEGER (0..7),
-	component				RRLP-Component
-}
-
-RRLP-Component ::= CHOICE {
-	msrPositionReq			MsrPosition-Req,
-	msrPositionRsp			MsrPosition-Rsp,
-	assistanceData			AssistanceData,
-	assistanceDataAck		NULL,
-	protocolError			ProtocolError,
-	...
-
-}
-
-END
diff --git a/rrlp-ephemeris/asn1/patch-rrlp-components.diff b/rrlp-ephemeris/asn1/patch-rrlp-components.diff
deleted file mode 100644
index a5e55ae..0000000
--- a/rrlp-ephemeris/asn1/patch-rrlp-components.diff
+++ /dev/null
@@ -1,36 +0,0 @@
---- RRLP-Components.asn	2009-10-26 22:10:44.000000000 +0100
-+++ RRLP-Components.asn	2009-10-26 22:10:44.000000000 +0100
-@@ -18,16 +18,16 @@
- 	Ext-GeographicalInformation, VelocityEstimate
- FROM
- 	MAP-LCS-DataTypes {
--	ccitt identified-organization (4) etsi (0) mobileDomain (0)
--	gsm-Network (1) modules (3) map-LCS-DataTypes (25) version5 (5)}
-+	itu-t identified-organization (4) etsi (0) mobileDomain (0)
-+	gsm-Network (1) modules (3) map-LCS-DataTypes (25) version11 (11)}
- 
- 	ExtensionContainer
- FROM MAP-ExtensionDataTypes {
--	ccitt identified-organization (4) etsi (0) mobileDomain (0)
--	gsm-Network (1) modules (3) map-ExtensionDataTypes (21) version4 (4)}
-+	itu-t identified-organization (4) etsi (0) mobileDomain (0)
-+	gsm-Network (1) modules (3) map-ExtensionDataTypes (21) version11 (11)}
- ;
- 
- -- Add here other ASN.1 definitions presented below
- -- in chapters 4 and 5.
- 
-@@ -305,11 +305,11 @@
- SystemInfoIndex ::= INTEGER (1..32)
- 
- CellIDAndLAC ::= SEQUENCE {
--	referenceLAC	LAC,				-- Location area code
-+	referenceLAC	LACID,				-- Location area code
- 	referenceCI		CellID				-- Cell identity
- }
- CellID ::= INTEGER (0..65535)
--LAC ::= INTEGER (0..65535)
-+LACID ::= INTEGER (0..65535)
- 
- -- OTD-MeasureInfo
- OTD-MeasureInfo ::= SEQUENCE {
diff --git a/rrlp-ephemeris/asn1c_patches/00_add_enumerated_verbose.diff b/rrlp-ephemeris/asn1c_patches/00_add_enumerated_verbose.diff
deleted file mode 100644
index 64c22a3..0000000
--- a/rrlp-ephemeris/asn1c_patches/00_add_enumerated_verbose.diff
+++ /dev/null
@@ -1,56 +0,0 @@
-Index: skeletons/NativeEnumerated.c
-===================================================================
---- skeletons/NativeEnumerated.c	(revision 1407)
-+++ skeletons/NativeEnumerated.c	(working copy)
-@@ -22,7 +22,7 @@
- 	"ENUMERATED",			/* The ASN.1 type is still ENUMERATED */
- 	"ENUMERATED",
- 	NativeInteger_free,
--	NativeInteger_print,
-+	NativeEnumerated_print,
- 	asn_generic_no_constraint,
- 	NativeInteger_decode_ber,
- 	NativeInteger_encode_der,
-@@ -205,3 +205,30 @@
- 	_ASN_ENCODED_OK(er);
- }
- 
-+int
-+NativeEnumerated_print(asn_TYPE_descriptor_t *td, const void *sptr, int ilevel,
-+	asn_app_consume_bytes_f *cb, void *app_key) {
-+	asn_INTEGER_specifics_t *specs=(asn_INTEGER_specifics_t *)td->specifics;
-+	const long *native = (const long *)sptr;
-+	char scratch[256];
-+	int ret;
-+
-+	(void)td;	/* Unused argument */
-+	(void)ilevel;	/* Unused argument */
-+
-+	if(native) {
-+		const asn_INTEGER_enum_map_t *map = INTEGER_map_value2enum(specs, *native);
-+		if (map && map->enum_len && map->enum_name) {
-+			ret = snprintf(scratch, sizeof(scratch),
-+				"%s", map->enum_name);
-+		} else {
-+			ret = snprintf(scratch, sizeof(scratch),
-+				(specs && specs->field_unsigned)
-+				? "%lu" : "%ld", *native);
-+		}
-+		assert(ret > 0 && (size_t)ret < sizeof(scratch));
-+		return (cb(scratch, ret, app_key) < 0) ? -1 : 0;
-+	} else {
-+		return (cb("<absent>", 8, app_key) < 0) ? -1 : 0;
-+	}
-+}
-Index: skeletons/NativeEnumerated.h
-===================================================================
---- skeletons/NativeEnumerated.h	(revision 1407)
-+++ skeletons/NativeEnumerated.h	(working copy)
-@@ -24,6 +24,7 @@
- xer_type_encoder_f NativeEnumerated_encode_xer;
- per_type_decoder_f NativeEnumerated_decode_uper;
- per_type_encoder_f NativeEnumerated_encode_uper;
-+asn_struct_print_f NativeEnumerated_print;
- 
- #ifdef __cplusplus
- }
diff --git a/rrlp-ephemeris/asn1c_patches/01_fix_per_encoding_dieter.diff b/rrlp-ephemeris/asn1c_patches/01_fix_per_encoding_dieter.diff
deleted file mode 100644
index a09c201..0000000
--- a/rrlp-ephemeris/asn1c_patches/01_fix_per_encoding_dieter.diff
+++ /dev/null
@@ -1,17 +0,0 @@
-Index: skeletons/per_support.c
-===================================================================
---- skeletons/per_support.c	(revision 1407)
-+++ skeletons/per_support.c	(working copy)
-@@ -336,7 +336,12 @@
- 		buf[3] = bits;
- 	else {
- 		ASN_DEBUG("->[PER out split %d]", obits);
-+#if 1 // Dieter
-+		po->nboff -= obits; // undo incrementation from a few lines above
-+		per_put_few_bits(po, bits >> (obits - 24), 24); // shift according to the rest of the bits 
-+#else		
- 		per_put_few_bits(po, bits >> 8, 24);
-+#endif
- 		per_put_few_bits(po, bits, obits - 24);
- 		ASN_DEBUG("<-[PER out split %d]", obits);
- 	}
diff --git a/rrlp-ephemeris/data.ubx b/rrlp-ephemeris/data.ubx
deleted file mode 100644
index 07cdddc..0000000
--- a/rrlp-ephemeris/data.ubx
+++ /dev/null
Binary files differ
diff --git a/rrlp-ephemeris/get-test-data.sh b/rrlp-ephemeris/get-test-data.sh
deleted file mode 100755
index 169f43c..0000000
--- a/rrlp-ephemeris/get-test-data.sh
+++ /dev/null
@@ -1,17 +0,0 @@
-#!/bin/sh
-
-DEV=$1
-OUTF=$2
-
-# Change mode
-echo -en "\$PUBX,41,1,0001,0001,9600,0*14\r\n" > ${DEV}
-
-# Wait a little
-sleep 2
-
-# Start dump
-echo -en "\xb5\x62\x01\x02\x00\x00\x03\x0a" | \
-	socat -t5 ${DEV},b9600,raw,clocal=1,echo=0 - > ${OUTF}
-echo -en "\xb5\x62\x0b\x10\x00\x00\x1b\x5c" | \
-	socat -t10 ${DEV},b9600,raw,clocal=1,echo=0 - >> ${OUTF}
-
diff --git a/rrlp-ephemeris/gpl-2.0.txt b/rrlp-ephemeris/gpl-2.0.txt
deleted file mode 100644
index d511905..0000000
--- a/rrlp-ephemeris/gpl-2.0.txt
+++ /dev/null
@@ -1,339 +0,0 @@
-		    GNU GENERAL PUBLIC LICENSE
-		       Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-			    Preamble
-
-  The licenses for most software are designed to take away your
-freedom to share and change it.  By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users.  This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it.  (Some other Free Software Foundation software is covered by
-the GNU Lesser General Public License instead.)  You can apply it to
-your programs, too.
-
-  When we speak of free software, we are referring to freedom, not
-price.  Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
-  To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
-  For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have.  You must make sure that they, too, receive or can get the
-source code.  And you must show them these terms so they know their
-rights.
-
-  We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
-  Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software.  If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
-  Finally, any free program is threatened constantly by software
-patents.  We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary.  To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
-  The precise terms and conditions for copying, distribution and
-modification follow.
-
-		    GNU GENERAL PUBLIC LICENSE
-   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
-  0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License.  The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language.  (Hereinafter, translation is included without limitation in
-the term "modification".)  Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope.  The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
-  1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
-  2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
-    a) You must cause the modified files to carry prominent notices
-    stating that you changed the files and the date of any change.
-
-    b) You must cause any work that you distribute or publish, that in
-    whole or in part contains or is derived from the Program or any
-    part thereof, to be licensed as a whole at no charge to all third
-    parties under the terms of this License.
-
-    c) If the modified program normally reads commands interactively
-    when run, you must cause it, when started running for such
-    interactive use in the most ordinary way, to print or display an
-    announcement including an appropriate copyright notice and a
-    notice that there is no warranty (or else, saying that you provide
-    a warranty) and that users may redistribute the program under
-    these conditions, and telling the user how to view a copy of this
-    License.  (Exception: if the Program itself is interactive but
-    does not normally print such an announcement, your work based on
-    the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole.  If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works.  But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
-  3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
-    a) Accompany it with the complete corresponding machine-readable
-    source code, which must be distributed under the terms of Sections
-    1 and 2 above on a medium customarily used for software interchange; or,
-
-    b) Accompany it with a written offer, valid for at least three
-    years, to give any third party, for a charge no more than your
-    cost of physically performing source distribution, a complete
-    machine-readable copy of the corresponding source code, to be
-    distributed under the terms of Sections 1 and 2 above on a medium
-    customarily used for software interchange; or,
-
-    c) Accompany it with the information you received as to the offer
-    to distribute corresponding source code.  (This alternative is
-    allowed only for noncommercial distribution and only if you
-    received the program in object code or executable form with such
-    an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it.  For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable.  However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
-  4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License.  Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
-  5. You are not required to accept this License, since you have not
-signed it.  However, nothing else grants you permission to modify or
-distribute the Program or its derivative works.  These actions are
-prohibited by law if you do not accept this License.  Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
-  6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions.  You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
-  7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License.  If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all.  For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices.  Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
-  8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded.  In such case, this License incorporates
-the limitation as if written in the body of this License.
-
-  9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time.  Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number.  If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation.  If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
-  10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission.  For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this.  Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
-			    NO WARRANTY
-
-  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
-  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
-		     END OF TERMS AND CONDITIONS
-
-	    How to Apply These Terms to Your New Programs
-
-  If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
-  To do so, attach the following notices to the program.  It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
-    <one line to give the program's name and a brief idea of what it does.>
-    Copyright (C) <year>  <name of author>
-
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 2 of the License, or
-    (at your option) any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License along
-    with this program; if not, write to the Free Software Foundation, Inc.,
-    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
-    Gnomovision version 69, Copyright (C) year name of author
-    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
-    This is free software, and you are welcome to redistribute it
-    under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License.  Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary.  Here is a sample; alter the names:
-
-  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
-  `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
-  <signature of Ty Coon>, 1 April 1989
-  Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs.  If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library.  If this is what you want to do, use the GNU Lesser General
-Public License instead of this License.
diff --git a/rrlp-ephemeris/gpl-3.0.txt b/rrlp-ephemeris/gpl-3.0.txt
deleted file mode 100644
index 94a9ed0..0000000
--- a/rrlp-ephemeris/gpl-3.0.txt
+++ /dev/null
@@ -1,674 +0,0 @@
-                    GNU GENERAL PUBLIC LICENSE
-                       Version 3, 29 June 2007
-
- Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-                            Preamble
-
-  The GNU General Public License is a free, copyleft license for
-software and other kinds of works.
-
-  The licenses for most software and other practical works are designed
-to take away your freedom to share and change the works.  By contrast,
-the GNU General Public License is intended to guarantee your freedom to
-share and change all versions of a program--to make sure it remains free
-software for all its users.  We, the Free Software Foundation, use the
-GNU General Public License for most of our software; it applies also to
-any other work released this way by its authors.  You can apply it to
-your programs, too.
-
-  When we speak of free software, we are referring to freedom, not
-price.  Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-them if you wish), that you receive source code or can get it if you
-want it, that you can change the software or use pieces of it in new
-free programs, and that you know you can do these things.
-
-  To protect your rights, we need to prevent others from denying you
-these rights or asking you to surrender the rights.  Therefore, you have
-certain responsibilities if you distribute copies of the software, or if
-you modify it: responsibilities to respect the freedom of others.
-
-  For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must pass on to the recipients the same
-freedoms that you received.  You must make sure that they, too, receive
-or can get the source code.  And you must show them these terms so they
-know their rights.
-
-  Developers that use the GNU GPL protect your rights with two steps:
-(1) assert copyright on the software, and (2) offer you this License
-giving you legal permission to copy, distribute and/or modify it.
-
-  For the developers' and authors' protection, the GPL clearly explains
-that there is no warranty for this free software.  For both users' and
-authors' sake, the GPL requires that modified versions be marked as
-changed, so that their problems will not be attributed erroneously to
-authors of previous versions.
-
-  Some devices are designed to deny users access to install or run
-modified versions of the software inside them, although the manufacturer
-can do so.  This is fundamentally incompatible with the aim of
-protecting users' freedom to change the software.  The systematic
-pattern of such abuse occurs in the area of products for individuals to
-use, which is precisely where it is most unacceptable.  Therefore, we
-have designed this version of the GPL to prohibit the practice for those
-products.  If such problems arise substantially in other domains, we
-stand ready to extend this provision to those domains in future versions
-of the GPL, as needed to protect the freedom of users.
-
-  Finally, every program is threatened constantly by software patents.
-States should not allow patents to restrict development and use of
-software on general-purpose computers, but in those that do, we wish to
-avoid the special danger that patents applied to a free program could
-make it effectively proprietary.  To prevent this, the GPL assures that
-patents cannot be used to render the program non-free.
-
-  The precise terms and conditions for copying, distribution and
-modification follow.
-
-                       TERMS AND CONDITIONS
-
-  0. Definitions.
-
-  "This License" refers to version 3 of the GNU General Public License.
-
-  "Copyright" also means copyright-like laws that apply to other kinds of
-works, such as semiconductor masks.
-
-  "The Program" refers to any copyrightable work licensed under this
-License.  Each licensee is addressed as "you".  "Licensees" and
-"recipients" may be individuals or organizations.
-
-  To "modify" a work means to copy from or adapt all or part of the work
-in a fashion requiring copyright permission, other than the making of an
-exact copy.  The resulting work is called a "modified version" of the
-earlier work or a work "based on" the earlier work.
-
-  A "covered work" means either the unmodified Program or a work based
-on the Program.
-
-  To "propagate" a work means to do anything with it that, without
-permission, would make you directly or secondarily liable for
-infringement under applicable copyright law, except executing it on a
-computer or modifying a private copy.  Propagation includes copying,
-distribution (with or without modification), making available to the
-public, and in some countries other activities as well.
-
-  To "convey" a work means any kind of propagation that enables other
-parties to make or receive copies.  Mere interaction with a user through
-a computer network, with no transfer of a copy, is not conveying.
-
-  An interactive user interface displays "Appropriate Legal Notices"
-to the extent that it includes a convenient and prominently visible
-feature that (1) displays an appropriate copyright notice, and (2)
-tells the user that there is no warranty for the work (except to the
-extent that warranties are provided), that licensees may convey the
-work under this License, and how to view a copy of this License.  If
-the interface presents a list of user commands or options, such as a
-menu, a prominent item in the list meets this criterion.
-
-  1. Source Code.
-
-  The "source code" for a work means the preferred form of the work
-for making modifications to it.  "Object code" means any non-source
-form of a work.
-
-  A "Standard Interface" means an interface that either is an official
-standard defined by a recognized standards body, or, in the case of
-interfaces specified for a particular programming language, one that
-is widely used among developers working in that language.
-
-  The "System Libraries" of an executable work include anything, other
-than the work as a whole, that (a) is included in the normal form of
-packaging a Major Component, but which is not part of that Major
-Component, and (b) serves only to enable use of the work with that
-Major Component, or to implement a Standard Interface for which an
-implementation is available to the public in source code form.  A
-"Major Component", in this context, means a major essential component
-(kernel, window system, and so on) of the specific operating system
-(if any) on which the executable work runs, or a compiler used to
-produce the work, or an object code interpreter used to run it.
-
-  The "Corresponding Source" for a work in object code form means all
-the source code needed to generate, install, and (for an executable
-work) run the object code and to modify the work, including scripts to
-control those activities.  However, it does not include the work's
-System Libraries, or general-purpose tools or generally available free
-programs which are used unmodified in performing those activities but
-which are not part of the work.  For example, Corresponding Source
-includes interface definition files associated with source files for
-the work, and the source code for shared libraries and dynamically
-linked subprograms that the work is specifically designed to require,
-such as by intimate data communication or control flow between those
-subprograms and other parts of the work.
-
-  The Corresponding Source need not include anything that users
-can regenerate automatically from other parts of the Corresponding
-Source.
-
-  The Corresponding Source for a work in source code form is that
-same work.
-
-  2. Basic Permissions.
-
-  All rights granted under this License are granted for the term of
-copyright on the Program, and are irrevocable provided the stated
-conditions are met.  This License explicitly affirms your unlimited
-permission to run the unmodified Program.  The output from running a
-covered work is covered by this License only if the output, given its
-content, constitutes a covered work.  This License acknowledges your
-rights of fair use or other equivalent, as provided by copyright law.
-
-  You may make, run and propagate covered works that you do not
-convey, without conditions so long as your license otherwise remains
-in force.  You may convey covered works to others for the sole purpose
-of having them make modifications exclusively for you, or provide you
-with facilities for running those works, provided that you comply with
-the terms of this License in conveying all material for which you do
-not control copyright.  Those thus making or running the covered works
-for you must do so exclusively on your behalf, under your direction
-and control, on terms that prohibit them from making any copies of
-your copyrighted material outside their relationship with you.
-
-  Conveying under any other circumstances is permitted solely under
-the conditions stated below.  Sublicensing is not allowed; section 10
-makes it unnecessary.
-
-  3. Protecting Users' Legal Rights From Anti-Circumvention Law.
-
-  No covered work shall be deemed part of an effective technological
-measure under any applicable law fulfilling obligations under article
-11 of the WIPO copyright treaty adopted on 20 December 1996, or
-similar laws prohibiting or restricting circumvention of such
-measures.
-
-  When you convey a covered work, you waive any legal power to forbid
-circumvention of technological measures to the extent such circumvention
-is effected by exercising rights under this License with respect to
-the covered work, and you disclaim any intention to limit operation or
-modification of the work as a means of enforcing, against the work's
-users, your or third parties' legal rights to forbid circumvention of
-technological measures.
-
-  4. Conveying Verbatim Copies.
-
-  You may convey verbatim copies of the Program's source code as you
-receive it, in any medium, provided that you conspicuously and
-appropriately publish on each copy an appropriate copyright notice;
-keep intact all notices stating that this License and any
-non-permissive terms added in accord with section 7 apply to the code;
-keep intact all notices of the absence of any warranty; and give all
-recipients a copy of this License along with the Program.
-
-  You may charge any price or no price for each copy that you convey,
-and you may offer support or warranty protection for a fee.
-
-  5. Conveying Modified Source Versions.
-
-  You may convey a work based on the Program, or the modifications to
-produce it from the Program, in the form of source code under the
-terms of section 4, provided that you also meet all of these conditions:
-
-    a) The work must carry prominent notices stating that you modified
-    it, and giving a relevant date.
-
-    b) The work must carry prominent notices stating that it is
-    released under this License and any conditions added under section
-    7.  This requirement modifies the requirement in section 4 to
-    "keep intact all notices".
-
-    c) You must license the entire work, as a whole, under this
-    License to anyone who comes into possession of a copy.  This
-    License will therefore apply, along with any applicable section 7
-    additional terms, to the whole of the work, and all its parts,
-    regardless of how they are packaged.  This License gives no
-    permission to license the work in any other way, but it does not
-    invalidate such permission if you have separately received it.
-
-    d) If the work has interactive user interfaces, each must display
-    Appropriate Legal Notices; however, if the Program has interactive
-    interfaces that do not display Appropriate Legal Notices, your
-    work need not make them do so.
-
-  A compilation of a covered work with other separate and independent
-works, which are not by their nature extensions of the covered work,
-and which are not combined with it such as to form a larger program,
-in or on a volume of a storage or distribution medium, is called an
-"aggregate" if the compilation and its resulting copyright are not
-used to limit the access or legal rights of the compilation's users
-beyond what the individual works permit.  Inclusion of a covered work
-in an aggregate does not cause this License to apply to the other
-parts of the aggregate.
-
-  6. Conveying Non-Source Forms.
-
-  You may convey a covered work in object code form under the terms
-of sections 4 and 5, provided that you also convey the
-machine-readable Corresponding Source under the terms of this License,
-in one of these ways:
-
-    a) Convey the object code in, or embodied in, a physical product
-    (including a physical distribution medium), accompanied by the
-    Corresponding Source fixed on a durable physical medium
-    customarily used for software interchange.
-
-    b) Convey the object code in, or embodied in, a physical product
-    (including a physical distribution medium), accompanied by a
-    written offer, valid for at least three years and valid for as
-    long as you offer spare parts or customer support for that product
-    model, to give anyone who possesses the object code either (1) a
-    copy of the Corresponding Source for all the software in the
-    product that is covered by this License, on a durable physical
-    medium customarily used for software interchange, for a price no
-    more than your reasonable cost of physically performing this
-    conveying of source, or (2) access to copy the
-    Corresponding Source from a network server at no charge.
-
-    c) Convey individual copies of the object code with a copy of the
-    written offer to provide the Corresponding Source.  This
-    alternative is allowed only occasionally and noncommercially, and
-    only if you received the object code with such an offer, in accord
-    with subsection 6b.
-
-    d) Convey the object code by offering access from a designated
-    place (gratis or for a charge), and offer equivalent access to the
-    Corresponding Source in the same way through the same place at no
-    further charge.  You need not require recipients to copy the
-    Corresponding Source along with the object code.  If the place to
-    copy the object code is a network server, the Corresponding Source
-    may be on a different server (operated by you or a third party)
-    that supports equivalent copying facilities, provided you maintain
-    clear directions next to the object code saying where to find the
-    Corresponding Source.  Regardless of what server hosts the
-    Corresponding Source, you remain obligated to ensure that it is
-    available for as long as needed to satisfy these requirements.
-
-    e) Convey the object code using peer-to-peer transmission, provided
-    you inform other peers where the object code and Corresponding
-    Source of the work are being offered to the general public at no
-    charge under subsection 6d.
-
-  A separable portion of the object code, whose source code is excluded
-from the Corresponding Source as a System Library, need not be
-included in conveying the object code work.
-
-  A "User Product" is either (1) a "consumer product", which means any
-tangible personal property which is normally used for personal, family,
-or household purposes, or (2) anything designed or sold for incorporation
-into a dwelling.  In determining whether a product is a consumer product,
-doubtful cases shall be resolved in favor of coverage.  For a particular
-product received by a particular user, "normally used" refers to a
-typical or common use of that class of product, regardless of the status
-of the particular user or of the way in which the particular user
-actually uses, or expects or is expected to use, the product.  A product
-is a consumer product regardless of whether the product has substantial
-commercial, industrial or non-consumer uses, unless such uses represent
-the only significant mode of use of the product.
-
-  "Installation Information" for a User Product means any methods,
-procedures, authorization keys, or other information required to install
-and execute modified versions of a covered work in that User Product from
-a modified version of its Corresponding Source.  The information must
-suffice to ensure that the continued functioning of the modified object
-code is in no case prevented or interfered with solely because
-modification has been made.
-
-  If you convey an object code work under this section in, or with, or
-specifically for use in, a User Product, and the conveying occurs as
-part of a transaction in which the right of possession and use of the
-User Product is transferred to the recipient in perpetuity or for a
-fixed term (regardless of how the transaction is characterized), the
-Corresponding Source conveyed under this section must be accompanied
-by the Installation Information.  But this requirement does not apply
-if neither you nor any third party retains the ability to install
-modified object code on the User Product (for example, the work has
-been installed in ROM).
-
-  The requirement to provide Installation Information does not include a
-requirement to continue to provide support service, warranty, or updates
-for a work that has been modified or installed by the recipient, or for
-the User Product in which it has been modified or installed.  Access to a
-network may be denied when the modification itself materially and
-adversely affects the operation of the network or violates the rules and
-protocols for communication across the network.
-
-  Corresponding Source conveyed, and Installation Information provided,
-in accord with this section must be in a format that is publicly
-documented (and with an implementation available to the public in
-source code form), and must require no special password or key for
-unpacking, reading or copying.
-
-  7. Additional Terms.
-
-  "Additional permissions" are terms that supplement the terms of this
-License by making exceptions from one or more of its conditions.
-Additional permissions that are applicable to the entire Program shall
-be treated as though they were included in this License, to the extent
-that they are valid under applicable law.  If additional permissions
-apply only to part of the Program, that part may be used separately
-under those permissions, but the entire Program remains governed by
-this License without regard to the additional permissions.
-
-  When you convey a copy of a covered work, you may at your option
-remove any additional permissions from that copy, or from any part of
-it.  (Additional permissions may be written to require their own
-removal in certain cases when you modify the work.)  You may place
-additional permissions on material, added by you to a covered work,
-for which you have or can give appropriate copyright permission.
-
-  Notwithstanding any other provision of this License, for material you
-add to a covered work, you may (if authorized by the copyright holders of
-that material) supplement the terms of this License with terms:
-
-    a) Disclaiming warranty or limiting liability differently from the
-    terms of sections 15 and 16 of this License; or
-
-    b) Requiring preservation of specified reasonable legal notices or
-    author attributions in that material or in the Appropriate Legal
-    Notices displayed by works containing it; or
-
-    c) Prohibiting misrepresentation of the origin of that material, or
-    requiring that modified versions of such material be marked in
-    reasonable ways as different from the original version; or
-
-    d) Limiting the use for publicity purposes of names of licensors or
-    authors of the material; or
-
-    e) Declining to grant rights under trademark law for use of some
-    trade names, trademarks, or service marks; or
-
-    f) Requiring indemnification of licensors and authors of that
-    material by anyone who conveys the material (or modified versions of
-    it) with contractual assumptions of liability to the recipient, for
-    any liability that these contractual assumptions directly impose on
-    those licensors and authors.
-
-  All other non-permissive additional terms are considered "further
-restrictions" within the meaning of section 10.  If the Program as you
-received it, or any part of it, contains a notice stating that it is
-governed by this License along with a term that is a further
-restriction, you may remove that term.  If a license document contains
-a further restriction but permits relicensing or conveying under this
-License, you may add to a covered work material governed by the terms
-of that license document, provided that the further restriction does
-not survive such relicensing or conveying.
-
-  If you add terms to a covered work in accord with this section, you
-must place, in the relevant source files, a statement of the
-additional terms that apply to those files, or a notice indicating
-where to find the applicable terms.
-
-  Additional terms, permissive or non-permissive, may be stated in the
-form of a separately written license, or stated as exceptions;
-the above requirements apply either way.
-
-  8. Termination.
-
-  You may not propagate or modify a covered work except as expressly
-provided under this License.  Any attempt otherwise to propagate or
-modify it is void, and will automatically terminate your rights under
-this License (including any patent licenses granted under the third
-paragraph of section 11).
-
-  However, if you cease all violation of this License, then your
-license from a particular copyright holder is reinstated (a)
-provisionally, unless and until the copyright holder explicitly and
-finally terminates your license, and (b) permanently, if the copyright
-holder fails to notify you of the violation by some reasonable means
-prior to 60 days after the cessation.
-
-  Moreover, your license from a particular copyright holder is
-reinstated permanently if the copyright holder notifies you of the
-violation by some reasonable means, this is the first time you have
-received notice of violation of this License (for any work) from that
-copyright holder, and you cure the violation prior to 30 days after
-your receipt of the notice.
-
-  Termination of your rights under this section does not terminate the
-licenses of parties who have received copies or rights from you under
-this License.  If your rights have been terminated and not permanently
-reinstated, you do not qualify to receive new licenses for the same
-material under section 10.
-
-  9. Acceptance Not Required for Having Copies.
-
-  You are not required to accept this License in order to receive or
-run a copy of the Program.  Ancillary propagation of a covered work
-occurring solely as a consequence of using peer-to-peer transmission
-to receive a copy likewise does not require acceptance.  However,
-nothing other than this License grants you permission to propagate or
-modify any covered work.  These actions infringe copyright if you do
-not accept this License.  Therefore, by modifying or propagating a
-covered work, you indicate your acceptance of this License to do so.
-
-  10. Automatic Licensing of Downstream Recipients.
-
-  Each time you convey a covered work, the recipient automatically
-receives a license from the original licensors, to run, modify and
-propagate that work, subject to this License.  You are not responsible
-for enforcing compliance by third parties with this License.
-
-  An "entity transaction" is a transaction transferring control of an
-organization, or substantially all assets of one, or subdividing an
-organization, or merging organizations.  If propagation of a covered
-work results from an entity transaction, each party to that
-transaction who receives a copy of the work also receives whatever
-licenses to the work the party's predecessor in interest had or could
-give under the previous paragraph, plus a right to possession of the
-Corresponding Source of the work from the predecessor in interest, if
-the predecessor has it or can get it with reasonable efforts.
-
-  You may not impose any further restrictions on the exercise of the
-rights granted or affirmed under this License.  For example, you may
-not impose a license fee, royalty, or other charge for exercise of
-rights granted under this License, and you may not initiate litigation
-(including a cross-claim or counterclaim in a lawsuit) alleging that
-any patent claim is infringed by making, using, selling, offering for
-sale, or importing the Program or any portion of it.
-
-  11. Patents.
-
-  A "contributor" is a copyright holder who authorizes use under this
-License of the Program or a work on which the Program is based.  The
-work thus licensed is called the contributor's "contributor version".
-
-  A contributor's "essential patent claims" are all patent claims
-owned or controlled by the contributor, whether already acquired or
-hereafter acquired, that would be infringed by some manner, permitted
-by this License, of making, using, or selling its contributor version,
-but do not include claims that would be infringed only as a
-consequence of further modification of the contributor version.  For
-purposes of this definition, "control" includes the right to grant
-patent sublicenses in a manner consistent with the requirements of
-this License.
-
-  Each contributor grants you a non-exclusive, worldwide, royalty-free
-patent license under the contributor's essential patent claims, to
-make, use, sell, offer for sale, import and otherwise run, modify and
-propagate the contents of its contributor version.
-
-  In the following three paragraphs, a "patent license" is any express
-agreement or commitment, however denominated, not to enforce a patent
-(such as an express permission to practice a patent or covenant not to
-sue for patent infringement).  To "grant" such a patent license to a
-party means to make such an agreement or commitment not to enforce a
-patent against the party.
-
-  If you convey a covered work, knowingly relying on a patent license,
-and the Corresponding Source of the work is not available for anyone
-to copy, free of charge and under the terms of this License, through a
-publicly available network server or other readily accessible means,
-then you must either (1) cause the Corresponding Source to be so
-available, or (2) arrange to deprive yourself of the benefit of the
-patent license for this particular work, or (3) arrange, in a manner
-consistent with the requirements of this License, to extend the patent
-license to downstream recipients.  "Knowingly relying" means you have
-actual knowledge that, but for the patent license, your conveying the
-covered work in a country, or your recipient's use of the covered work
-in a country, would infringe one or more identifiable patents in that
-country that you have reason to believe are valid.
-
-  If, pursuant to or in connection with a single transaction or
-arrangement, you convey, or propagate by procuring conveyance of, a
-covered work, and grant a patent license to some of the parties
-receiving the covered work authorizing them to use, propagate, modify
-or convey a specific copy of the covered work, then the patent license
-you grant is automatically extended to all recipients of the covered
-work and works based on it.
-
-  A patent license is "discriminatory" if it does not include within
-the scope of its coverage, prohibits the exercise of, or is
-conditioned on the non-exercise of one or more of the rights that are
-specifically granted under this License.  You may not convey a covered
-work if you are a party to an arrangement with a third party that is
-in the business of distributing software, under which you make payment
-to the third party based on the extent of your activity of conveying
-the work, and under which the third party grants, to any of the
-parties who would receive the covered work from you, a discriminatory
-patent license (a) in connection with copies of the covered work
-conveyed by you (or copies made from those copies), or (b) primarily
-for and in connection with specific products or compilations that
-contain the covered work, unless you entered into that arrangement,
-or that patent license was granted, prior to 28 March 2007.
-
-  Nothing in this License shall be construed as excluding or limiting
-any implied license or other defenses to infringement that may
-otherwise be available to you under applicable patent law.
-
-  12. No Surrender of Others' Freedom.
-
-  If conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License.  If you cannot convey a
-covered work so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you may
-not convey it at all.  For example, if you agree to terms that obligate you
-to collect a royalty for further conveying from those to whom you convey
-the Program, the only way you could satisfy both those terms and this
-License would be to refrain entirely from conveying the Program.
-
-  13. Use with the GNU Affero General Public License.
-
-  Notwithstanding any other provision of this License, you have
-permission to link or combine any covered work with a work licensed
-under version 3 of the GNU Affero General Public License into a single
-combined work, and to convey the resulting work.  The terms of this
-License will continue to apply to the part which is the covered work,
-but the special requirements of the GNU Affero General Public License,
-section 13, concerning interaction through a network will apply to the
-combination as such.
-
-  14. Revised Versions of this License.
-
-  The Free Software Foundation may publish revised and/or new versions of
-the GNU General Public License from time to time.  Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-  Each version is given a distinguishing version number.  If the
-Program specifies that a certain numbered version of the GNU General
-Public License "or any later version" applies to it, you have the
-option of following the terms and conditions either of that numbered
-version or of any later version published by the Free Software
-Foundation.  If the Program does not specify a version number of the
-GNU General Public License, you may choose any version ever published
-by the Free Software Foundation.
-
-  If the Program specifies that a proxy can decide which future
-versions of the GNU General Public License can be used, that proxy's
-public statement of acceptance of a version permanently authorizes you
-to choose that version for the Program.
-
-  Later license versions may give you additional or different
-permissions.  However, no additional obligations are imposed on any
-author or copyright holder as a result of your choosing to follow a
-later version.
-
-  15. Disclaimer of Warranty.
-
-  THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
-APPLICABLE LAW.  EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
-HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
-OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
-THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
-PURPOSE.  THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
-IS WITH YOU.  SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
-ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
-
-  16. Limitation of Liability.
-
-  IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
-THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
-GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
-USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
-DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
-PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
-EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
-SUCH DAMAGES.
-
-  17. Interpretation of Sections 15 and 16.
-
-  If the disclaimer of warranty and limitation of liability provided
-above cannot be given local legal effect according to their terms,
-reviewing courts shall apply local law that most closely approximates
-an absolute waiver of all civil liability in connection with the
-Program, unless a warranty or assumption of liability accompanies a
-copy of the Program in return for a fee.
-
-                     END OF TERMS AND CONDITIONS
-
-            How to Apply These Terms to Your New Programs
-
-  If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
-  To do so, attach the following notices to the program.  It is safest
-to attach them to the start of each source file to most effectively
-state the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
-    <one line to give the program's name and a brief idea of what it does.>
-    Copyright (C) <year>  <name of author>
-
-    This program is free software: you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation, either version 3 of the License, or
-    (at your option) any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-Also add information on how to contact you by electronic and paper mail.
-
-  If the program does terminal interaction, make it output a short
-notice like this when it starts in an interactive mode:
-
-    <program>  Copyright (C) <year>  <name of author>
-    This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
-    This is free software, and you are welcome to redistribute it
-    under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License.  Of course, your program's commands
-might be different; for a GUI interface, you would use an "about box".
-
-  You should also get your employer (if you work as a programmer) or school,
-if any, to sign a "copyright disclaimer" for the program, if necessary.
-For more information on this, and how to apply and follow the GNU GPL, see
-<http://www.gnu.org/licenses/>.
-
-  The GNU General Public License does not permit incorporating your program
-into proprietary programs.  If your program is a subroutine library, you
-may consider it more useful to permit linking proprietary applications with
-the library.  If this is what you want to do, use the GNU Lesser General
-Public License instead of this License.  But first, please read
-<http://www.gnu.org/philosophy/why-not-lgpl.html>.
diff --git a/rrlp-ephemeris/gps.c b/rrlp-ephemeris/gps.c
deleted file mode 100644
index c235748..0000000
--- a/rrlp-ephemeris/gps.c
+++ /dev/null
@@ -1,126 +0,0 @@
-/*
- * gps.c
- *
- * A few utility functions to deal with low level GPS data
- *
- *
- * Copyright (C) 2009  Sylvain Munaut <tnt@246tNt.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "gps.h"
-
-
-#define GET_FIELD_U(w, nb, pos) (((w) >> (pos)) & ((1<<(nb))-1))
-#define GET_FIELD_S(w, nb, pos) (((int)((w) << (32-(nb)-(pos)))) >> (32-(nb)))
-
-/*
- * Unpacks GPS Subframe 1,2,3 payloads (3 * 8 words)
- *
- * Note: eph->sv_id is not filled here since not present in those subframes
- *
- * (no parity bit checking is done, only the lower 24 bits of each word
- *  are used)
- */
-int
-gps_unpack_sf123(uint32_t *sf, struct gps_ephemeris_sv *eph)
-{
-	uint32_t *sf1 = &sf[0];
-	uint32_t *sf2 = &sf[8];
-	uint32_t *sf3 = &sf[16];
-
-	int iode1, iode2;
-
-	eph->week_no	= GET_FIELD_U(sf1[0], 10, 14);
-	eph->code_on_l2	= GET_FIELD_U(sf1[0],  2, 12);
-	eph->sv_ura	= GET_FIELD_U(sf1[0],  4,  8);
-	eph->sv_health	= GET_FIELD_U(sf1[0],  6,  2);
-	eph->l2_p_flag	= GET_FIELD_U(sf1[1],  1, 23);
-	eph->t_gd	= GET_FIELD_S(sf1[4],  8,  0);
-	eph->iodc	= (GET_FIELD_U(sf1[0],  2,  0) << 8) | \
-	                   GET_FIELD_U(sf1[5],  8, 16);
-	eph->t_oc	= GET_FIELD_U(sf1[5], 16,  0);
-	eph->a_f2	= GET_FIELD_S(sf1[6],  8, 16);
-	eph->a_f1	= GET_FIELD_S(sf1[6], 16,  0);
-	eph->a_f0	= GET_FIELD_S(sf1[7], 22,  2);
-
-	iode1		= GET_FIELD_U(sf2[0],  8, 16);
-	eph->c_rs	= GET_FIELD_S(sf2[0], 16,  0);
-	eph->delta_n	= GET_FIELD_S(sf2[1], 16,  8);
-	eph->m_0	= (GET_FIELD_S(sf2[1],  8,  0) << 24) | \
-	                   GET_FIELD_U(sf2[2], 24,  0);
-	eph->c_uc	= GET_FIELD_S(sf2[3], 16,  8);
-	eph->e		= (GET_FIELD_U(sf2[3],  8,  0) << 24) | \
-	                   GET_FIELD_U(sf2[4], 24,  0);
-	eph->c_us	= GET_FIELD_S(sf2[5], 16,  8);
-	eph->a_powhalf	= (GET_FIELD_U(sf2[5],  8,  0) << 24) | \
-	                   GET_FIELD_U(sf2[6], 24,  0);
-	eph->t_oe	= GET_FIELD_U(sf2[7], 16,  8);
-	eph->fit_flag	= GET_FIELD_U(sf2[7],  1,  7);
-
-	eph->c_ic	= GET_FIELD_S(sf3[0], 16,  8);
-	eph->omega_0	= (GET_FIELD_S(sf3[0],  8,  0) << 24) | \
-	                   GET_FIELD_U(sf3[1], 24,  0);
-	eph->c_is	= GET_FIELD_S(sf3[2], 16,  8);
-	eph->i_0	= (GET_FIELD_S(sf3[2],  8,  0) << 24) | \
-	                   GET_FIELD_U(sf3[3], 24,  0);
-	eph->c_rc	= GET_FIELD_S(sf3[4], 16,  8);
-	eph->w		= (GET_FIELD_S(sf3[4],  8,  0) << 24) | \
-	                   GET_FIELD_U(sf3[5], 24,  0);
-	eph->omega_dot	= GET_FIELD_S(sf3[6], 24,  0);
-	iode2		= GET_FIELD_U(sf3[7],  8, 16);
-	eph->idot	= GET_FIELD_S(sf3[7], 14,  2);
-
-	eph->_rsvd1	= GET_FIELD_U(sf1[1], 23,  0);
-	eph->_rsvd2	= GET_FIELD_U(sf1[2], 24,  0);
-	eph->_rsvd3	= GET_FIELD_U(sf1[3], 24,  0);
-	eph->_rsvd4	= GET_FIELD_U(sf1[4], 16,  8);
-	eph->aodo	= GET_FIELD_U(sf2[7],  5,  2);
-
-	/* Check & cross-validate iodc[7:0], iode1, iode2 */
-	if ((iode1 != iode2) || (iode1 != (eph->iodc & 0xff)))
-		return -1;
-
-	return 0;
-}
-
-
-/*
- * Unpacks GPS Subframe 4 or 5 Almanac pages payload (8 words)
- *
- * (no parity bit checking is done, only the lower 24 bits of each word
- *  are used)
- */
-int
-gps_unpack_sf45_almanac(uint32_t *sf, struct gps_almanac_sv *alm)
-{
-	alm->sv_id      = GET_FIELD_U(sf[0],  6, 16);
-
-	alm->e		= GET_FIELD_U(sf[0], 16,  0);
-	alm->t_oa	= GET_FIELD_U(sf[1],  8, 16);
-	alm->ksii	= GET_FIELD_S(sf[1], 16,  0);
-	alm->omega_dot	= GET_FIELD_S(sf[2], 16,  8);
-	alm->sv_health	= GET_FIELD_U(sf[2],  8,  0);
-	alm->a_powhalf	= GET_FIELD_U(sf[3], 24,  0);
-	alm->omega_0	= GET_FIELD_S(sf[4], 24,  0);
-	alm->w		= GET_FIELD_S(sf[5], 24,  0);
-	alm->m_0	= GET_FIELD_S(sf[6], 24,  0);
-	alm->a_f0	= (GET_FIELD_S(sf[7], 8, 16) << 3) | \
-	                   GET_FIELD_U(sf[7], 3,  2);
-	alm->a_f1	= GET_FIELD_S(sf[7], 11,  5);
-
-	return 0;
-}
-
diff --git a/rrlp-ephemeris/gps.h b/rrlp-ephemeris/gps.h
deleted file mode 100644
index 241b9d7..0000000
--- a/rrlp-ephemeris/gps.h
+++ /dev/null
@@ -1,190 +0,0 @@
-/*
- * gps.h
- *
- * Header to deal with low level GPS data
- *
- *
- * Copyright (C) 2009  Sylvain Munaut <tnt@246tNt.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifndef __GPS_H__
-#define __GPS_H__
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include <stdint.h>
-
-
-#define MAX_SV	64
-
-
-/* Ionosperic model data */
-struct gps_ionosphere_model {
-			/* #bits  Scale factor  Effective  Units            */
-			/*           (LSB)       range                      */
-
-	int alpha_0;	/* s 8       2^-30                 seconds          */
-	int alpha_1;	/* s 8       2^-27                 s / semi-circles */
-	int alpha_2;	/* s 8       2^-24                 s / (semi-circles)^2 */
-	int alpha_3;	/* s 8       2^-24                 s / (semi-circles)^3 */
-	int beta_0;	/* s 8       2^11                  seconds          */
-	int beta_1;	/* s 8       2^14                  s / semi-circles */
-	int beta_2;	/* s 8       2^16                  s / (semi-circles)^2 */
-	int beta_3;	/* s 8       2^16                  s / (semi-circles)^3 */
-};
-
-
-/* UTC model data */
-struct gps_utc_model {
-			/* #bits  Scale factor  Effective  Units            */
-			/*           (LSB)       range                      */
-
-	int a0;		/* s 32      2^-30                 seconds          */
-	int a1;		/* s 24      2^-50                 seconds / seconds */
-	int delta_t_ls;	/* s  8      1                     seconds          */
-	int t_ot;	/* u  8      2^12       602,112    seconds          */
-	int wn_t;	/* u  8      1                     weeks            */
-	int wn_lsf;	/* u  8      1                     weeks            */
-	int dn;		/* u  8      1                7    days             */
-	int delta_t_lsf;/* s  8      1                     seconds          */
-};
-
-
-/* Almanach data */
-struct gps_almanac_sv {
-	int sv_id;
-	int sv_health;
-
-			/* #bits  Scale factor  Effective  Units            */
-			/*           (LSB)       range                      */
-
-	int e;		/* u 16      2^-21                                  */
-	int t_oa;	/* u  8      2^12       602,112    seconds          */
-	int ksii;	/* s 16      2^-19                 semi-circles     */
-	int omega_dot;	/* s 16      2^-38                 semi-circles / s */
-	int a_powhalf;	/* u 24      2^-11                 meters           */
-	int omega_0;	/* s 24      2^-23                 semi-circles     */
-	int w;		/* s 24      2^-23                 semi-circles     */
-	int m_0;	/* s 24      2^-23                 semi-circles     */
-	int a_f0;	/* s 11      2^-20                 seconds          */
-	int a_f1;	/* s 11      2^-38                 seconds / seconds */
-};
-
-struct gps_almanac {
-	int wna;
-	int n_sv;
-	struct gps_almanac_sv svs[MAX_SV];
-};
-
-
-/* Ephemeris data */
-struct gps_ephemeris_sv {
-	int sv_id;
-
-			/* #bits  Scale factor  Effective  Units            */
-			/*           (LSB)       range                      */
-
-	int code_on_l2;	/* u  2      1                     /                */
-	int week_no;	/* u 10      1                     week             */
-	int l2_p_flag;	/* u  1      1                     /                */
-	int sv_ura;	/* u  4      /                     /                */
-	int sv_health;	/* u  6      /                     /                */
-	int t_gd;	/* s  8      2^-31                 seconds          */
-	int iodc;	/* u 10      /                     /                */
-	int t_oc;	/* u 16      2^4        604,784    seconds          */
-	int a_f2;	/* s  8      2^-55                 sec / sec^2      */
-	int a_f1;	/* s 16      2^-43                 sec / sec        */
-	int a_f0;	/* s 22      2^-31                 seconds          */
-
-	int c_rs;	/* s 16      2^-5                  meters           */
-	int delta_n;	/* s 16      2^-43                 semi-circles / s */
-	int m_0;	/* s 32      2^-31                 semi-circles     */
-	int c_uc;	/* s 16      2^-29                 radians          */
-	unsigned int e;	/* u 32      2^-33      0.03       /                */
-	int c_us;	/* s 16      2^-29                 radians          */
-	unsigned int a_powhalf; /* u 32  2^-19             meters^(1/2)     */
-	int t_oe;	/* u 16      2^4        604,784    seconds          */
-	int fit_flag;	/* u  1      /                     /                */
-
-	int c_ic;	/* s 16      2^-29                 radians          */
-	int omega_0;	/* s 32      2^-31                 semi-circles     */
-	int c_is;	/* s 16      2^-29                 radians          */
-	int i_0;	/* s 32      2^-31                 semi-circles     */
-	int c_rc;	/* s 16      2^-5                  meters           */
-	int w;		/* s 32      2^-31                 semi-circles     */
-	int omega_dot;	/* s 24      2^-43                 semi-circles / s */
-	int idot;	/* s 14      2^-43                 semi-circles / s */
-
-	int _rsvd1;	/* 23 bits */
-	int _rsvd2;	/* 24 bits */
-	int _rsvd3;	/* 24 bits */
-	int _rsvd4;	/* 16 bits */
-	int aodo;	/* 8 bits  Not sure it needs to be here ... */
-};
-
-struct gps_ephemeris {
-	int n_sv;
-	struct gps_ephemeris_sv svs[MAX_SV];
-};
-
-
-/* Reference position */
-struct gps_ref_pos {	/* WSG84 ellipsoid */
-	double latitude;	/* deg */
-	double longitude;	/* deg */
-	double altitude;	/* m above ellipsoid */
-};
-
-
-/* Reference time */
-struct gps_ref_time {
-	int wn;			/* GPS week number */
-	double tow;		/* in seconds */
-};
-
-
-/* All assist data */
-#define GPS_FIELD_IONOSPHERE	(1<<0)
-#define GPS_FIELD_UTC		(1<<1)
-#define GPS_FIELD_ALMANAC	(1<<2)
-#define GPS_FIELD_EPHEMERIS	(1<<3)
-#define GPS_FIELD_REFPOS	(1<<4)
-#define GPS_FIELD_REFTIME	(1<<5)
-
-struct gps_assist_data {
-	int fields;
-	struct gps_ionosphere_model	ionosphere;
-	struct gps_utc_model		utc;
-	struct gps_almanac		almanac;
-	struct gps_ephemeris		ephemeris;
-	struct gps_ref_pos		ref_pos;
-	struct gps_ref_time		ref_time;
-};
-
-
-/* GPS Subframe utility methods (see gps.c for details) */
-int gps_unpack_sf123(uint32_t *sf, struct gps_ephemeris_sv *eph);
-int gps_unpack_sf45_almanac(uint32_t *sf, struct gps_almanac_sv *alm);
-
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* __GPS_H__ */
-
diff --git a/rrlp-ephemeris/main.c b/rrlp-ephemeris/main.c
deleted file mode 100644
index bb025a2..0000000
--- a/rrlp-ephemeris/main.c
+++ /dev/null
@@ -1,99 +0,0 @@
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <unistd.h>
-#include <string.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <fcntl.h>
-
-#include "gps.h"
-#include "ubx.h"
-#include "ubx-parse.h"
-#include "rrlp.h"
-
-static int
-do_ubx_read(struct gps_assist_data *gps, const char *filename)
-{
-	int rv, fd, i;
-	struct stat st;
-	void *buf;
-
-	/* Load file */
-	fd = open(filename, O_RDONLY);
-	if (fd < 0)
-		return -1;
-
-	rv = fstat(fd, &st);
-	if (rv < 0) {
-		close(fd);
-		return -1;
-	}
-
-	buf = malloc(st.st_size);
-	if (!buf) {
-		close(fd);
-		return -1;
-	}
-
-	rv = read(fd, buf, st.st_size);
-	if (rv != st.st_size) {
-		free(buf);
-		close(fd);
-		return -1;
-	}
-
-	/* Parse each message */
-	for (i=0; i<st.st_size;) {
-		int rv;
-		rv = ubx_msg_dispatch(ubx_parse_dt, buf + i, st.st_size - i, gps);
-		if (rv < 0)
-			i++;	/* Invalid message: try one byte later */
-		else
-			i += rv;
-	}
-
-	/* Done */
-	free(buf);
-	close(fd);
-
-	return 0;
-}
-
-static int
-do_rrlp(struct gps_assist_data *gps)
-{
-	struct rrlp_assist_req ar;
-	void *pdus[64];
-	int len[64];
-	int i, rv;
-
-	char *test = "\x28\x00\x80\x10\x01\x32\x00\x19\x4F\x07\x15\x04";
-
-	rrlp_decode_assistance_request(&ar, test, 12);
-	printf("%08x %016llx\n", ar.req_elems, (long long unsigned) ar.eph_svs);
-
-	ar.req_elems = -1;
-	ar.eph_svs = -1LL;
-	rv = rrlp_gps_assist_pdus(gps, &ar, pdus, len, 64);
-	printf("%d\n", rv);
-	for (i=0; i<rv; i++) {
-		printf("%p %d\n", pdus[i], len[i]);
-	}
-	return 0;
-}
-
-int main(int argc, char *argv[])
-{
-	struct gps_assist_data gps;
-	int rv;
-
-	memset(&gps, 0x00, sizeof(gps));
-
-	rv = do_ubx_read(&gps, "data.ubx");
-	
-	rv = do_rrlp(&gps);
-
-	return 0;
-}
-
diff --git a/rrlp-ephemeris/rrlp.c b/rrlp-ephemeris/rrlp.c
deleted file mode 100644
index e60c3ab..0000000
--- a/rrlp-ephemeris/rrlp.c
+++ /dev/null
@@ -1,648 +0,0 @@
-/*
- * rrlp.c
- *
- * RRLP implementation
- *
- *
- * Copyright (C) 2009  Sylvain Munaut <tnt@246tNt.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-
-
-#include <errno.h>
-#include <math.h>
-
-#include "gps.h"
-#include "rrlp.h"
-
-#include <PDU.h>
-#include <GPS-AssistData.h>
-#include <NavigationModel.h>
-#include <IonosphericModel.h>
-#include <UTCModel.h>
-#include <Almanac.h>
-#include <RefLocation.h>
-#include <ReferenceTime.h>
-
-
-/* ------------------------------------------------------------------------ */
-/* RRLP Assistance request decoding                                         */
-/* ---------------------------------------------------------------------{{{ */
-/* Decode and validate the assistance data request messages.
- * See section 10.10 of
- *  . ETSI TS 149 031 V8.1.0 (2009-01)
- *  . 3GPP TS 49.031 version 8.1.0 Release 8
- */
-
-/* Packed structure from 49.031 spec (RGA = Request GPS Assistance) */
-
-#define RRLP_RGA0_ALMANAC	(1<<0)
-#define RRLP_RGA0_UTC_MODEL	(1<<1)
-#define RRLP_RGA0_IONO_MODEL	(1<<2)
-#define RRLP_RGA0_NAV_MODEL	(1<<3)
-#define RRLP_RGA0_DGPS		(1<<4)
-#define RRLP_RGA0_REF_LOC	(1<<5)
-#define RRLP_RGA0_REF_TIME	(1<<6)
-#define RRLP_RGA0_ACQ_ASSIST	(1<<7)
-
-#define RRLP_RGA1_REALTIME_INT	(1<<0)
-#define RRLP_RGA1_EPH_EXT	(1<<1)
-#define RRLP_RGA1_EPH_EXT_CHECK	(1<<2)
-
-struct rrlp_rga_hdr {
-	uint8_t items0;
-	uint8_t items1;
-} __attribute__((packed));
-
-struct rrlp_rga_eph_sv {
-	uint8_t sv_id;		/* [7:6] reserved, [5:0] sv_id */
-	uint8_t iode;		/* latest eph in the MS memory in hours */
-} __attribute__((packed));
-
-struct rrlp_rga_eph {
-	uint8_t wn_hi;		/* [7:6] = wn[9:8] */
-	uint8_t wn_lo;		/* wn[7:0] */
-	uint8_t toe;		/* latest eph in the MS memory in hours */
-	uint8_t nsat_tmtoe;	/* [7:4] nstat, [3:0] T-Toe limit */
-	struct rrlp_rga_eph_sv svs[0];
-} __attribute__((packed));
-
-struct rrlp_rga_eph_ext {
-	uint8_t validity;	/* in 4 hours units */
-} __attribute__((packed));
-
-struct rrlp_rga_eph_ext_check {
-		/* weeks are in gps week modulo 4 */
-	uint8_t wn_begin_end;	/* [7:4] begin, [3:0] end */
-	uint8_t tow_begin;
-	uint8_t tow_end;
-} __attribute__((packed));
-
-
-/* Parsing function */
-
-int
-rrlp_decode_assistance_request(
-	struct rrlp_assist_req *ar,
-	void *req, int req_len)
-{
-	struct rrlp_rga_hdr *hdr = NULL;
-	struct rrlp_rga_eph *eph = NULL;
-	struct rrlp_rga_eph_ext *eph_ext = NULL;
-	struct rrlp_rga_eph_ext_check *eph_ext_check = NULL;
-	int p = 0;
-
-	/* Reset */
-	ar->req_elems = 0;
-	ar->eph_svs = 0;
-
-	/* Parse message */
-	hdr = req;
-	p += sizeof(struct rrlp_rga_hdr);
-	if (p > req_len)
-		return -1;
-
-	if (hdr->items0 & RRLP_RGA0_NAV_MODEL) {
-		eph = req + p;
-		p += sizeof(struct rrlp_rga_eph);
-		if (p > req_len)
-			return -1;
-		p += (eph->nsat_tmtoe >> 4) * sizeof(struct rrlp_rga_eph_sv);
-		if (p > req_len)
-			return -1;
-	}
-
-	if (hdr->items1 & RRLP_RGA1_EPH_EXT) {
-		eph_ext = req + p;
-		p += sizeof(struct rrlp_rga_eph_ext);
-		if (p > req_len)
-			return -1;
-	}
-
-	if (hdr->items1 & RRLP_RGA1_EPH_EXT_CHECK) {
-		eph_ext_check = req + p;
-		p += sizeof(struct rrlp_rga_eph_ext_check);
-		if (p > req_len)
-			return -1;
-	}
-
-	if (p != req_len)
-		return -2; /* not all bytes consumed ??? */
-
-	/* Print a warning for unsupported requests */
-	if ((eph_ext != NULL) ||
-	    (eph_ext_check != NULL) ||
-	    (hdr->items0 & (RRLP_RGA0_DGPS | RRLP_RGA0_ACQ_ASSIST)) ||
-	    (hdr->items1 & RRLP_RGA1_REALTIME_INT)) {
-		fprintf(stderr, "[w] Unsupported assistance data requested, ignored ...\n");
-	}
-
-	/* Copy the request */
-	if (hdr->items0 & RRLP_RGA0_ALMANAC)
-		ar->req_elems |= RRLP_AR_ALMANAC;
-
-	if (hdr->items0 & RRLP_RGA0_UTC_MODEL)
-		ar->req_elems |= RRLP_AR_UTC_MODEL;
-
-	if (hdr->items0 & RRLP_RGA0_IONO_MODEL)
-		ar->req_elems |= RRLP_AR_IONO_MODEL;
-
-	if (hdr->items0 & RRLP_RGA0_REF_LOC)
-		ar->req_elems |= RRLP_AR_REF_LOC;
-
-	if (hdr->items0 & RRLP_RGA0_REF_TIME)
-		ar->req_elems |= RRLP_AR_REF_TIME;
-
-	if (hdr->items0 & RRLP_RGA0_NAV_MODEL) {
-		int i, n_svs = eph->nsat_tmtoe >> 4;
-		ar->req_elems |= RRLP_AR_EPHEMERIS;
-		for (i=0; i<n_svs; i++)
-			ar->eph_svs |= (1ULL << (eph->svs[i].sv_id - 1));
-	}
-
-	return 0;
-}
-
-/* }}} */
-
-
-/* ------------------------------------------------------------------------ */
-/* RRLP elements fill                                                       */
-/* ---------------------------------------------------------------------{{{ */
-
-	/* Helpers */
-
-static void
-_ts_23_032_store_latitude(double lat, uint8_t *b)
-{
-	uint32_t x;
-	x = (uint32_t) floor(fabs(lat/90.0) * ((double)(1<<23)));
-	if (x >= (1<<23))
-		x = (1<<23) - 1;
-	if (lat < 0.0)
-		x |= (1<<23);
-	b[0] = (x >> 16) & 0xff;
-	b[1] = (x >>  8) & 0xff;
-	b[2] =  x        & 0xff;
-}
-
-static void
-_ts_23_032_store_longitude(double lon, uint8_t *b)
-{
-	int32_t x;
-	x = floor((lon/360.0) * ((double)(1<<24)));
-	if (x >= (1<<23))
-		x = 0x007fffff;
-	else if (x < -(1<<23))
-		x = 0x00800000;
-	b[0] = (x >> 16) & 0xff;
-	b[1] = (x >>  8) & 0xff;
-	b[2] =  x        & 0xff;
-}
-
-static void
-_ts_23_032_store_altitude(double alt, uint8_t *b)
-{
-	int alt_i = (int)fabs(alt);
-	b[0] = ((alt_i >> 8) & 0x7f) | (alt<0.0 ? 0x80 : 0x00);
-	b[1] = alt_i & 0xff;
-}
-
-
-	/* Fill methods */
-
-static void
-_rrlp_fill_navigation_model_element(
-	struct NavModelElement *rrlp_nme,
-	struct gps_ephemeris_sv *gps_eph_sv)
-{
-	struct UncompressedEphemeris *rrlp_eph;
-
-	rrlp_nme->satStatus.present = SatStatus_PR_newSatelliteAndModelUC;
-	rrlp_nme->satelliteID = gps_eph_sv->sv_id;
-
-	rrlp_eph = &rrlp_nme->satStatus.choice.newSatelliteAndModelUC;
-
-	rrlp_eph->ephemCodeOnL2   = gps_eph_sv->code_on_l2;
-	rrlp_eph->ephemURA        = gps_eph_sv->sv_ura;
-	rrlp_eph->ephemSVhealth   = gps_eph_sv->sv_health;
-	rrlp_eph->ephemIODC       = gps_eph_sv->iodc;
-	rrlp_eph->ephemL2Pflag    = gps_eph_sv->l2_p_flag;
-	rrlp_eph->ephemTgd        = gps_eph_sv->t_gd;
-	rrlp_eph->ephemToc        = gps_eph_sv->t_oc;
-	rrlp_eph->ephemAF2        = gps_eph_sv->a_f2;
-	rrlp_eph->ephemAF1        = gps_eph_sv->a_f1;
-	rrlp_eph->ephemAF0        = gps_eph_sv->a_f0;
-	rrlp_eph->ephemCrs        = gps_eph_sv->c_rs;
-	rrlp_eph->ephemDeltaN     = gps_eph_sv->delta_n;
-	rrlp_eph->ephemM0         = gps_eph_sv->m_0;
-	rrlp_eph->ephemCuc        = gps_eph_sv->c_uc;
-	rrlp_eph->ephemE          = gps_eph_sv->e;
-	rrlp_eph->ephemCus        = gps_eph_sv->c_us;
-	rrlp_eph->ephemAPowerHalf = gps_eph_sv->a_powhalf;
-	rrlp_eph->ephemToe        = gps_eph_sv->t_oe;
-	rrlp_eph->ephemFitFlag    = gps_eph_sv->fit_flag;
-	rrlp_eph->ephemAODA       = gps_eph_sv->aodo;
-	rrlp_eph->ephemCic        = gps_eph_sv->c_ic;
-	rrlp_eph->ephemOmegaA0    = gps_eph_sv->omega_0;
-	rrlp_eph->ephemCis        = gps_eph_sv->c_is;
-	rrlp_eph->ephemI0         = gps_eph_sv->i_0;
-	rrlp_eph->ephemCrc        = gps_eph_sv->c_rc;
-	rrlp_eph->ephemW          = gps_eph_sv->w;
-	rrlp_eph->ephemOmegaADot  = gps_eph_sv->omega_dot;
-	rrlp_eph->ephemIDot       = gps_eph_sv->idot;
-
-	rrlp_eph->ephemSF1Rsvd.reserved1 = gps_eph_sv->_rsvd1;
-	rrlp_eph->ephemSF1Rsvd.reserved2 = gps_eph_sv->_rsvd2;
-	rrlp_eph->ephemSF1Rsvd.reserved3 = gps_eph_sv->_rsvd3;
-	rrlp_eph->ephemSF1Rsvd.reserved4 = gps_eph_sv->_rsvd4;
-}
-
-static void
-_rrlp_fill_almanac_element(
-	struct AlmanacElement *rrlp_ae,
-	struct gps_almanac_sv *gps_alm_sv)
-{
-	rrlp_ae->satelliteID = gps_alm_sv->sv_id;
-
-	rrlp_ae->almanacE          = gps_alm_sv->e;
-	rrlp_ae->alamanacToa       = gps_alm_sv->t_oa;
-	rrlp_ae->almanacKsii       = gps_alm_sv->ksii;
-	rrlp_ae->almanacOmegaDot   = gps_alm_sv->omega_dot;
-	rrlp_ae->almanacSVhealth   = gps_alm_sv->sv_health;
-	rrlp_ae->almanacAPowerHalf = gps_alm_sv->a_powhalf;
-	rrlp_ae->almanacOmega0     = gps_alm_sv->omega_0;
-	rrlp_ae->almanacW          = gps_alm_sv->w;
-	rrlp_ae->almanacM0         = gps_alm_sv->m_0;
-	rrlp_ae->almanacAF0        = gps_alm_sv->a_f0;
-	rrlp_ae->almanacAF1        = gps_alm_sv->a_f1;
-
-}
-
-static void
-_rrlp_fill_ionospheric_model(
-	struct IonosphericModel *rrlp_iono,
-	struct gps_ionosphere_model *gps_iono)
-{
-	rrlp_iono->alfa0 = gps_iono->alpha_0;
-	rrlp_iono->alfa1 = gps_iono->alpha_1;
-	rrlp_iono->alfa2 = gps_iono->alpha_2;
-	rrlp_iono->alfa3 = gps_iono->alpha_3;
-	rrlp_iono->beta0 = gps_iono->beta_0;
-	rrlp_iono->beta1 = gps_iono->beta_1;
-	rrlp_iono->beta2 = gps_iono->beta_2;
-	rrlp_iono->beta3 = gps_iono->beta_3;
-}
-
-static void
-_rrlp_fill_utc_model(
-	struct UTCModel *rrlp_utc,
-	struct gps_utc_model *gps_utc)
-{
-	rrlp_utc->utcA1        = gps_utc->a1;
-	rrlp_utc->utcA0        = gps_utc->a0;
-	rrlp_utc->utcTot       = gps_utc->t_ot;
-	rrlp_utc->utcWNt       = gps_utc->wn_t & 0xff;
-	rrlp_utc->utcDeltaTls  = gps_utc->delta_t_ls;
-	rrlp_utc->utcWNlsf     = gps_utc->wn_lsf & 0xff;
-	rrlp_utc->utcDN        = gps_utc->dn;
-	rrlp_utc->utcDeltaTlsf = gps_utc->delta_t_lsf;
-}
-
-/* }}} */
-
-
-/* ------------------------------------------------------------------------ */
-/* RRLP Assistance PDU Generation                                           */
-/* ---------------------------------------------------------------------{{{ */
-
-struct PDU *
-_rrlp_create_gps_assist_pdu(int refnum, struct GPS_AssistData **o_gps_ad)
-{
-	struct PDU *pdu;
-	struct GPS_AssistData *gps_ad;
-
-	pdu = calloc(1, sizeof(*pdu));
-	if (!pdu)
-		return NULL;
-
-	gps_ad = calloc(1, sizeof(*gps_ad));
-	if (!gps_ad) {
-		free(pdu);
-		return NULL;
-	}
-
-	if (o_gps_ad)
-		*o_gps_ad = gps_ad;
-
-	pdu->referenceNumber = refnum;
-	pdu->component.present = RRLP_Component_PR_assistanceData;
-	pdu->component.choice.assistanceData.gps_AssistData = gps_ad;
-
-	return pdu;
-}
-
-static int
-_rrlp_add_ionospheric_model(
-	struct GPS_AssistData *rrlp_gps_ad,
-	struct gps_assist_data *gps_ad)
-{
-	struct IonosphericModel *rrlp_iono;
-
-	if (!(gps_ad->fields & GPS_FIELD_IONOSPHERE))
-		return -EINVAL;
-
-	rrlp_iono = calloc(1, sizeof(*rrlp_iono));
-	if (!rrlp_iono)
-		return -ENOMEM;
-	rrlp_gps_ad->controlHeader.ionosphericModel = rrlp_iono;
-
-	_rrlp_fill_ionospheric_model(rrlp_iono, &gps_ad->ionosphere);
-
-	return 0;
-}
-
-static int
-_rrlp_add_utc_model(
-	struct GPS_AssistData *rrlp_gps_ad,
-	struct gps_assist_data *gps_ad)
-{
-	struct UTCModel *rrlp_utc;
-
-	if (!(gps_ad->fields & GPS_FIELD_UTC))
-		return -EINVAL;
-
-	rrlp_utc = calloc(1, sizeof(*rrlp_utc));
-	if (!rrlp_utc)
-		return -ENOMEM;
-	rrlp_gps_ad->controlHeader.utcModel = rrlp_utc;
-
-	_rrlp_fill_utc_model(rrlp_utc, &gps_ad->utc);
-
-	return 0;
-}
-
-static int
-_rrlp_add_reference_location(
-	struct GPS_AssistData *rrlp_gps_ad,
-	struct gps_assist_data *gps_ad)
-{
-	struct RefLocation *rrlp_refloc;
-	uint8_t *b;
-
-	if (!(gps_ad->fields & GPS_FIELD_REFPOS))
-		return -EINVAL;
-
-	rrlp_refloc = calloc(1, sizeof(*rrlp_refloc));
-	if (!rrlp_refloc)
-		return -ENOMEM;
-	rrlp_gps_ad->controlHeader.refLocation = rrlp_refloc;
-
-	b = malloc(9);
-
-	b[0] = 0x80; /* Ellipsoid Point with altitude */
-	_ts_23_032_store_latitude(gps_ad->ref_pos.latitude, &b[1]);
-	_ts_23_032_store_longitude(gps_ad->ref_pos.longitude, &b[4]);
-	_ts_23_032_store_altitude(gps_ad->ref_pos.altitude, &b[7]);
-
-	rrlp_refloc->threeDLocation.buf = b;
-	rrlp_refloc->threeDLocation.size = 9;
-
-	return 0;
-}
-
-static int
-_rrlp_add_reference_time(
-	struct GPS_AssistData *rrlp_gps_ad,
-	struct gps_assist_data *gps_ad)
-{
-	struct ReferenceTime *rrlp_reftime;
-
-	if (!(gps_ad->fields & GPS_FIELD_REFTIME))
-		return -EINVAL;
-
-	rrlp_reftime = calloc(1, sizeof(*rrlp_reftime));
-	if (!rrlp_reftime)
-		return -ENOMEM;
-	rrlp_gps_ad->controlHeader.referenceTime = rrlp_reftime;
-
-	rrlp_reftime->gpsTime.gpsWeek   = gps_ad->ref_time.wn & 0x3ff; /* 10b */
-	rrlp_reftime->gpsTime.gpsTOW23b =
-		((int)floor(gps_ad->ref_time.tow / 0.08)) & 0x7fffff;  /* 23b */
-
-	return 0;
-}
-
-static int
-_rrlp_add_almanac(
-	struct GPS_AssistData *rrlp_gps_ad,
-	struct gps_assist_data *gps_ad, int *start, int count)
-{
-	int i;
-	struct Almanac *rrlp_alm;
-	struct gps_almanac *gps_alm = &gps_ad->almanac;
-
-	if (!(gps_ad->fields & GPS_FIELD_ALMANAC))
-		return -EINVAL;
-
-	rrlp_alm = calloc(1, sizeof(*rrlp_alm));
-	if (!rrlp_alm)
-		return -ENOMEM;
-	rrlp_gps_ad->controlHeader.almanac = rrlp_alm;
-
-	rrlp_alm->alamanacWNa = gps_alm->wna;
-	if (count == -1)
-		count = gps_alm->n_sv - *start;
-	for (i=*start; (i<*start+count) && (i<gps_alm->n_sv); i++) {
-		struct AlmanacElement *ae;
-		ae = calloc(1, sizeof(*ae));
-		if (!ae)
-			return -ENOMEM;
-		_rrlp_fill_almanac_element(ae, &gps_alm->svs[i]);
-		ASN_SEQUENCE_ADD(&rrlp_alm->almanacList.list, ae);
-	}
-
-	*start = i;
-
-	return i < gps_alm->n_sv;
-}
-
-static int
-_rrlp_add_ephemeris(
-	struct GPS_AssistData *rrlp_gps_ad,
-	struct gps_assist_data *gps_ad, int *start, int count, uint64_t mask)
-{
-	int i, j;
-	struct NavigationModel *rrlp_nav;
-	struct gps_ephemeris *gps_eph = &gps_ad->ephemeris;
-
-	if (!(gps_ad->fields & GPS_FIELD_EPHEMERIS))
-		return -EINVAL;
-
-	rrlp_nav = calloc(1, sizeof(*rrlp_nav));
-	if (!rrlp_nav)
-		return -ENOMEM;
-	rrlp_gps_ad->controlHeader.navigationModel = rrlp_nav;
-
-	if (count == -1)
-		count = gps_eph->n_sv - *start;
-	for (i=*start,j=0; (j<count) && (i<gps_eph->n_sv); i++) {
-		if (!(mask & (1ULL<<(gps_eph->svs[i].sv_id-1))))
-			continue;
-		struct NavModelElement *nme;
-		nme = calloc(1, sizeof(*nme));
-		if (!nme)
-			return -ENOMEM;
-		_rrlp_fill_navigation_model_element(nme, &gps_eph->svs[i]);
-		ASN_SEQUENCE_ADD(&rrlp_nav->navModelList.list, nme);
-		j++;
-	}
-
-	*start = i;
-
-	return i < gps_eph->n_sv;
-}
-
-
-#define MAX_PDUS 64
-
-int
-rrlp_gps_assist_pdus(
-	struct gps_assist_data *gps_ad, struct rrlp_assist_req *req,
-	void **o_pdu, int *o_len, int o_max_pdus)
-{
-	struct PDU *lst_pdu[MAX_PDUS];
-	int lst_cnt = 0;
-
-	struct PDU *rrlp_pdu = NULL;
-	struct GPS_AssistData *rrlp_gps_ad = NULL;
-	uint32_t re = req->req_elems;
-	int i, rv = 0;
-
-	/* IonosphericModel, UTCModel, RefLocation, ReferenceTime */
-	if (re & (RRLP_AR_IONO_MODEL |
-	          RRLP_AR_UTC_MODEL |
-	          RRLP_AR_REF_TIME |
-	          RRLP_AR_REF_LOC))
-	{
-		int pdu_has_data = 0;
-
-		rrlp_pdu = _rrlp_create_gps_assist_pdu(1, &rrlp_gps_ad);
-		if (!rrlp_pdu) {
-			rv = -ENOMEM;
-			goto error;
-		}
-
-		if (re & RRLP_AR_IONO_MODEL)
-			if (!_rrlp_add_ionospheric_model(rrlp_gps_ad, gps_ad))
-				pdu_has_data = 1;
-
-		if (re & RRLP_AR_UTC_MODEL)
-			if (!_rrlp_add_utc_model(rrlp_gps_ad, gps_ad))
-				pdu_has_data = 1;
-
-		if (re & RRLP_AR_REF_TIME)
-			if (!_rrlp_add_reference_time(rrlp_gps_ad, gps_ad))
-				pdu_has_data = 1;
-
-		if (re & RRLP_AR_REF_LOC)
-			if (!_rrlp_add_reference_location(rrlp_gps_ad, gps_ad))
-				pdu_has_data = 1;
-
-		if (pdu_has_data) {
-			lst_pdu[lst_cnt++] = rrlp_pdu;
-			rrlp_pdu = NULL;
-		}
-	}
-
-	/* Almanac */
-	if (re & RRLP_AR_ALMANAC) {
-		i = 0;
-		do {
-			if (!(gps_ad->fields & GPS_FIELD_ALMANAC))
-				break;
-
-			if (!rrlp_pdu) {
-				rrlp_pdu = _rrlp_create_gps_assist_pdu(1, &rrlp_gps_ad);
-				if (!rrlp_pdu) {
-					rv = -ENOMEM;
-					goto error;
-				}
-			}
-
-			rv = _rrlp_add_almanac(rrlp_gps_ad, gps_ad, &i, 10);
-			if (rv < 0)
-				goto error;
-
-			lst_pdu[lst_cnt++] = rrlp_pdu;
-			rrlp_pdu = NULL;
-		} while (rv);
-	}
-
-	/* Ephemeris */
-	if (re & RRLP_AR_EPHEMERIS) {
-		i = 0;
-		do {
-			if (!(gps_ad->fields & GPS_FIELD_EPHEMERIS))
-				break;
-
-			if (!rrlp_pdu) {
-				rrlp_pdu = _rrlp_create_gps_assist_pdu(1, &rrlp_gps_ad);
-				if (!rrlp_pdu) {
-					rv = -ENOMEM;
-					goto error;
-				}
-			}
-
-			rv = _rrlp_add_ephemeris(rrlp_gps_ad, gps_ad, &i, 2, req->eph_svs);
-
-			lst_pdu[lst_cnt++] = rrlp_pdu;
-			rrlp_pdu = NULL;
-
-		} while (rv);
-	}
-
-	/* Serialize & Release all PDUs */
-	for (i=0; i<lst_cnt && i<o_max_pdus; i++) {
-		/* Pseudo segmentation flags */
-		MoreAssDataToBeSent_t *mad = calloc(1, sizeof(*mad));
-		*mad = (i == (lst_cnt-1)) ?
-				MoreAssDataToBeSent_noMoreMessages :
-				MoreAssDataToBeSent_moreMessagesOnTheWay;
-		lst_pdu[i]->component.choice.assistanceData.moreAssDataToBeSent = mad;
-
-		/* Serialization */
-		// asn_fprint(stdout, &asn_DEF_PDU, lst_pdu[i]);
-		rv = uper_encode_to_new_buffer(&asn_DEF_PDU, NULL, lst_pdu[i], &o_pdu[i]);
-		if (rv < 0)
-			goto error;
-		o_len[i] = rv;
-	}
-
-	rv = lst_cnt;
-
-	/* Release ASN.1 objects */
-error:
-	if (rrlp_pdu)
-		asn_DEF_PDU.free_struct(&asn_DEF_PDU, (void*)rrlp_pdu, 0);
-
-	for (i=0; i<lst_cnt; i++)
-		asn_DEF_PDU.free_struct(&asn_DEF_PDU, lst_pdu[i], 0);
-
-	return rv;
-}
-
-/* }}} */
-
diff --git a/rrlp-ephemeris/rrlp.h b/rrlp-ephemeris/rrlp.h
deleted file mode 100644
index a5e4344..0000000
--- a/rrlp-ephemeris/rrlp.h
+++ /dev/null
@@ -1,64 +0,0 @@
-/*
- * rrlp.h
- *
- * RRLP Header
- *
- *
- * Copyright (C) 2009  Sylvain Munaut <tnt@246tNt.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifndef __RRLP_H__
-#define __RRLP_H__
-
-#include <stdint.h>
-
-#include "gps.h"
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-/* Our internal simplified structure for requests */
-
-#define RRLP_AR_REF_LOC		(1<<0)
-#define RRLP_AR_REF_TIME	(1<<1)
-#define RRLP_AR_UTC_MODEL	(1<<2)
-#define RRLP_AR_IONO_MODEL	(1<<3)
-#define RRLP_AR_ALMANAC		(1<<4)
-#define RRLP_AR_EPHEMERIS	(1<<5)
-
-struct rrlp_assist_req {
-	uint32_t req_elems;
-	uint64_t eph_svs;
-};
-
-
-/* Methods */
-int rrlp_decode_assistance_request(struct rrlp_assist_req *ar,
-	void *req, int req_len);
-
-int rrlp_gps_assist_pdus(
-	struct gps_assist_data *gps_ad, struct rrlp_assist_req *req,
-	void **o_pdu, int *o_len, int o_max_pdus);
-
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* __RRLP_H__ */
-
diff --git a/rrlp-ephemeris/ubx-parse.c b/rrlp-ephemeris/ubx-parse.c
deleted file mode 100644
index c3d0f70..0000000
--- a/rrlp-ephemeris/ubx-parse.c
+++ /dev/null
@@ -1,177 +0,0 @@
-/*
- * ubx-parse.c
- *
- * Implementation of parsing code converting UBX messages to GPS assist
- * data
- *
- *
- * Copyright (C) 2009  Sylvain Munaut <tnt@246tNt.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include <stdio.h>
-
-#include "gps.h"
-#include "ubx.h"
-#include "ubx-parse.h"
-
-
-/* Helpers */
-
-static int
-float_to_fixedpoint(float f, int sf)
-{
-	if (sf < 0) {
-		while (sf++ < 0)
-			f *= 2.0f;
-	} else {
-		while (sf-- > 0)
-			f *= 0.5f;
-	}
-
-	return (int)f;
-}
-
-static inline int
-double_to_fixedpoint(double d, int sf)
-{
-	if (sf < 0) {
-		while (sf++ < 0)
-			d *= 2.0;
-	} else {
-		while (sf-- > 0)
-			d *= 0.5;
-	}
-
-	return (int)d;
-}
-
-
-/* UBX message parsing to fill gps assist data */
-
-static void
-_ubx_msg_parse_nav_posllh(struct ubx_hdr *hdr, void *pl, int pl_len, void *ud)
-{
-	struct ubx_nav_posllh *nav_posllh = pl;
-	struct gps_assist_data *gps = ud;
-
-	//printf("[.] NAV_POSLLH\n");
-
-	gps->fields |= GPS_FIELD_REFPOS;
-
-	gps->ref_pos.latitude  = (double)(nav_posllh->lat) * 1e-7;
-	gps->ref_pos.longitude = (double)(nav_posllh->lon) * 1e-7;
-	gps->ref_pos.altitude  = (double)(nav_posllh->height) * 1e-3;
-}
-
-static void
-_ubx_msg_parse_aid_ini(struct ubx_hdr *hdr, void *pl, int pl_len, void *ud)
-{
-	struct ubx_aid_ini *aid_ini = pl;
-	struct gps_assist_data *gps = ud;
-
-	//printf("[.] AID_INI\n");
-
-	/* Extract info for "Reference Time" */
-	gps->fields |= GPS_FIELD_REFTIME;
-
-	gps->ref_time.wn = aid_ini->wn;
-	gps->ref_time.tow = (double)aid_ini->tow * 1e-3;
-
-	// FIXME: We could extract ref position as well but we need it in
-	//        WGS84 geodetic coordinates and it's provided as ecef, so
-	//        we need a lot of math ...
-}
-
-static void
-_ubx_msg_parse_aid_hui(struct ubx_hdr *hdr, void *pl, int pl_len, void *ud)
-{
-	struct ubx_aid_hui *aid_hui = pl;
-	struct gps_assist_data *gps = ud;
-
-	//printf("[.] AID_HUI\n");
-
-	if (aid_hui->flags & 0x2) { /* UTC parameters valid */
-		struct gps_utc_model *utc = &gps->utc;
-
-		gps->fields |= GPS_FIELD_UTC;
-
-		utc->a0          = double_to_fixedpoint(aid_hui->utc_a0, -30);
-		utc->a1          = double_to_fixedpoint(aid_hui->utc_a1, -50);
-		utc->delta_t_ls  = aid_hui->utc_ls;
-		utc->t_ot        = aid_hui->utc_tot >> 12;
-		utc->wn_t        = aid_hui->utc_wnt;
-		utc->wn_lsf      = aid_hui->utc_wnf;
-		utc->dn          = aid_hui->utc_dn;
-		utc->delta_t_lsf = aid_hui->utc_lsf;
-	}
-
-	if (aid_hui->flags & 0x04) { /* Klobuchar parameters valid */
-		struct gps_ionosphere_model *iono = &gps->ionosphere;
-
-		gps->fields |= GPS_FIELD_IONOSPHERE;
-
-		iono->alpha_0 = float_to_fixedpoint(aid_hui->klob_a0, -30);
-		iono->alpha_1 = float_to_fixedpoint(aid_hui->klob_a1, -27);
-		iono->alpha_2 = float_to_fixedpoint(aid_hui->klob_a2, -24);
-		iono->alpha_3 = float_to_fixedpoint(aid_hui->klob_a3, -24);
-		iono->beta_0 = float_to_fixedpoint(aid_hui->klob_b0, 11);
-		iono->beta_1 = float_to_fixedpoint(aid_hui->klob_b1, 14);
-		iono->beta_2 = float_to_fixedpoint(aid_hui->klob_b2, 16);
-		iono->beta_3 = float_to_fixedpoint(aid_hui->klob_b3, 16);
-	}
-}
-
-static void
-_ubx_msg_parse_aid_alm(struct ubx_hdr *hdr, void *pl, int pl_len, void *ud)
-{
-	struct ubx_aid_alm *aid_alm = pl;
-	struct gps_assist_data *gps = ud;
-
-	//printf("[.] AID_ALM %d - %d\n", aid_alm->sv_id, aid_alm->gps_week);
-
-	if (aid_alm->gps_week) {
-		gps->fields |= GPS_FIELD_ALMANAC;
-		gps->almanac.wna = aid_alm->gps_week & 0xff;
-		gps_unpack_sf45_almanac(aid_alm->alm_words, &gps->almanac.svs[gps->almanac.n_sv++]);
-	}
-}
-
-static void
-_ubx_msg_parse_aid_eph(struct ubx_hdr *hdr, void *pl, int pl_len, void *ud)
-{
-	struct ubx_aid_eph *aid_eph = pl;
-	struct gps_assist_data *gps = ud;
-
-	//printf("[.] AID_EPH %d - %s\n", aid_eph->sv_id, aid_eph->present ? "present" : "not present");
-
-	if (aid_eph->present) {
-		int i = gps->ephemeris.n_sv++;
-		gps->fields |= GPS_FIELD_EPHEMERIS;
-		gps->ephemeris.svs[i].sv_id = aid_eph->sv_id;
-		gps_unpack_sf123(aid_eph->eph_words, &gps->ephemeris.svs[i]);
-	}
-}
-
-
-/* Dispatch table */
-struct ubx_dispatch_entry ubx_parse_dt[] = {
-	UBX_DISPATCH(NAV, POSLLH, _ubx_msg_parse_nav_posllh),
-	UBX_DISPATCH(AID, INI, _ubx_msg_parse_aid_ini),
-	UBX_DISPATCH(AID, HUI, _ubx_msg_parse_aid_hui),
-	UBX_DISPATCH(AID, ALM, _ubx_msg_parse_aid_alm),
-	UBX_DISPATCH(AID, EPH, _ubx_msg_parse_aid_eph),
-};
-
diff --git a/rrlp-ephemeris/ubx-parse.h b/rrlp-ephemeris/ubx-parse.h
deleted file mode 100644
index 621475d..0000000
--- a/rrlp-ephemeris/ubx-parse.h
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * ubx-parse.h
- *
- * Header for parsing code converting UBX messages to GPS assist data
- *
- *
- * Copyright (C) 2009  Sylvain Munaut <tnt@246tNt.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifndef __UBX_PARSE_H__
-#define __UBX_PARSE_H__
-
-
-#include "gps.h"
-#include "ubx.h"
-
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-
-/* Dispatch table */
-extern struct ubx_dispatch_entry ubx_parse_dt[];
-
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* __UBX_PARSE_H__ */
-
diff --git a/rrlp-ephemeris/ubx.c b/rrlp-ephemeris/ubx.c
deleted file mode 100644
index 83dd1f0..0000000
--- a/rrlp-ephemeris/ubx.c
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * ubx.c
- *
- * Implementation of generic UBX helpers
- *
- *
- * Copyright (C) 2009  Sylvain Munaut <tnt@246tNt.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include <stdio.h>
-#include <stdint.h>
-
-#include "ubx.h"
-
-
-static void
-ubx_checksum(uint8_t *data, int len, uint8_t *cksum)
-{
-	int i;
-	uint8_t ck0 = 0, ck1 = 0;
-	for (i=0; i<len; i++) {
-		ck0 += data[i];
-		ck1 += ck0;
-	}
-	cksum[0] = ck0;
-	cksum[1] = ck1;
-}
-
-
-static ubx_msg_handler_t
-ubx_find_handler(struct ubx_dispatch_entry *dt, uint8_t msg_class, uint8_t msg_id)
-{
-	while (dt->handler) {
-		if ((dt->msg_class == msg_class) && (dt->msg_id == msg_id))
-			return dt->handler;
-		dt++;
-	}
-	return NULL;
-}
-
-
-int
-ubx_msg_dispatch(struct ubx_dispatch_entry *dt,
-                 void *msg, int len, void *userdata)
-{
-	struct ubx_hdr *hdr = msg;
-	uint8_t cksum[2], *cksum_ptr;
-	ubx_msg_handler_t h;
-
-	if ((hdr->sync[0] != UBX_SYNC0) || (hdr->sync[1] != UBX_SYNC1)) {
-		fprintf(stderr, "[!] Invalid sync bytes\n");
-		return -1;
-	}
-
-	ubx_checksum(msg + 2, sizeof(struct ubx_hdr) + hdr->payload_len - 2, cksum);
-	cksum_ptr = msg + (sizeof(struct ubx_hdr) + hdr->payload_len);
-	if ((cksum_ptr[0] != cksum[0]) || (cksum_ptr[1] != cksum[1])) {
-		fprintf(stderr, "[!] Invalid checksum\n");
-		return -1;
-	}
-
-	h = ubx_find_handler(dt, hdr->msg_class, hdr->msg_id);
-	if (h)
-		h(hdr, msg + sizeof(struct ubx_hdr), hdr->payload_len, userdata);
-
-	return sizeof(struct ubx_hdr) + hdr->payload_len + 2;
-}
-
diff --git a/rrlp-ephemeris/ubx.h b/rrlp-ephemeris/ubx.h
deleted file mode 100644
index 8264386..0000000
--- a/rrlp-ephemeris/ubx.h
+++ /dev/null
@@ -1,232 +0,0 @@
-/*
- * ubx.h
- *
- * Header for UBX related stuff
- *
- *
- * Copyright (C) 2009  Sylvain Munaut <tnt@246tNt.com>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 2 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-
-#ifndef __UBX_H__
-#define __UBX_H__
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include <stdint.h>
-
-/* Constants used in UBX */
-
-	/* Sync bytes (two first bytes of each message) */
-#define UBX_SYNC0		0xb5
-#define UBX_SYNC1		0x62
-
-	/* UBX messages classes */
-#define UBX_CLASS_NAV		0x01
-#define UBX_CLASS_RXM		0x02
-#define UBX_CLASS_INF		0x04
-#define UBX_CLASS_ACK		0x05
-#define UBX_CLASS_CFG		0x06
-#define UBX_CLASS_UPD		0x09
-#define UBX_CLASS_MON		0x0a
-#define UBX_CLASS_AID		0x0b
-#define UBX_CLASS_TIM		0x0d
-
-	/* UBX messages type ID (by class) */
-#define UBX_NAV_POSECEF		0x01
-#define UBX_NAV_POSLLH		0x02
-#define UBX_NAV_STATUS		0x03
-#define UBX_NAV_DOP		0x04
-#define UBX_NAV_SOL		0x06
-#define UBX_NAV_POSUTM		0x08
-#define UBX_NAV_VELECEF		0x11
-#define UBX_NAV_VELNED		0x12
-#define UBX_NAV_TIMEGPS		0x20
-#define UBX_NAV_TIMEUTC		0x21
-#define UBX_NAV_CLOCK		0x22
-#define UBX_NAV_SVINFO		0x30
-#define UBX_NAV_DGPS		0x31
-#define UBX_NAV_SBAS		0x32
-#define UBX_NAV_EKFSTATUS	0x40
-
-#define UBX_RXM_RAW		0x10
-#define UBX_RXM_SFRB		0x11
-#define UBX_RXM_SVSI		0x20
-#define UBX_RXM_SVSI_GPS	0x20
-#define UBX_RXM_ALM		0x30
-#define UBX_RXM_EPH		0x31
-#define UBX_RXM_POSREQ		0x40
-
-#define UBX_INF_ERROR		0x00
-#define UBX_INF_WARNING		0x01
-#define UBX_INF_NOTICE		0x02
-#define UBX_INF_TEST		0x03
-#define UBX_INF_DEBUG		0x04
-#define UBX_INF_USER		0x07
-
-#define UBX_ACK_NAK		0x00
-#define UBX_ACK_ACK		0x01
-
-#define UBX_CFG_PRT		0x00
-#define UBX_CFG_USB		0x1b
-#define UBX_CFG_MSG		0x01
-#define UBX_CFG_NMEA		0x17
-#define UBX_CFG_RATE		0x08
-#define UBX_CFG_CFG		0x09
-#define UBX_CFG_TP		0x07
-#define UBX_CFG_NAV2		0x1a
-#define UBX_CFG_DAT		0x06
-#define UBX_CFG_INF		0x02
-#define UBX_CFG_RST		0x04
-#define UBX_CFG_RXM		0x11
-#define UBX_CFG_ANT		0x13
-#define UBX_CFG_FXN		0x0e
-#define UBX_CFG_SBAS		0x16
-#define UBX_CFG_LIC		0x80
-#define UBX_CFG_TM		0x10
-#define UBX_CFG_TM2		0x19
-#define UBX_CFG_TMODE		0x1d
-#define UBX_CFG_EKF		0x12
-
-#define UBX_UPD_DOWNL		0x01
-#define UBX_UPD_UPLOAD		0x02
-#define UBX_UPD_EXEC		0x03
-#define UBX_UPD_MEMCPY		0x04
-
-#define UBX_MON_SCHD		0x01
-#define UBX_MON_IO		0x02
-#define UBX_MON_IPC		0x03
-#define UBX_MON_VER		0x04
-#define UBX_MON_EXCEPT		0x05
-#define UBX_MON_MSGPP		0x06
-#define UBX_MON_RXBUF		0x07
-#define UBX_MON_TXBUF		0x08
-#define UBX_MON_HW		0x09
-#define UBX_MON_USB		0x0a
-
-#define UBX_AID_REQ		0x00
-#define UBX_AID_INI		0x01
-#define UBX_AID_HUI		0x02
-#define UBX_AID_DATA		0x10
-#define UBX_AID_ALM		0x30
-#define UBX_AID_EPH		0x31
-
-#define UBX_TIM_TP		0x01
-#define UBX_TIM_TM		0x02
-#define UBX_TIM_TM2		0x03
-#define UBX_TIM_SVIN		0x04
-
-
-/* Header */
-struct ubx_hdr {
-        uint8_t  sync[2];
-        uint8_t  msg_class;
-        uint8_t  msg_id;
-        uint16_t payload_len;
-} __attribute__((packed));
-
-
-/* Payload formats (some of them) */
-struct ubx_nav_posllh {
-	uint32_t itow;
-	int32_t  lon;	/* scaling 1e-7 */
-	int32_t  lat;	/* scaling 1e-7 */
-	int32_t  height;/* mm */
-	int32_t  hsl;	/* mm */
-	uint32_t hacc;	/* mm */
-	uint32_t vacc;	/* mm */
-} __attribute__((packed));
-
-struct ubx_aid_ini {
-	int32_t  x;
-	int32_t  y;
-	int32_t  z;
-	uint32_t posacc;
-	uint16_t tm_cfg;
-	uint16_t wn;
-	uint32_t tow;
-	int32_t  tow_ns;
-	uint32_t tacc_ms;
-	uint32_t tacc_ns;
-	int32_t  clkd;
-	uint32_t clkdacc;
-	uint32_t flags;
-} __attribute__((packed));
-
-struct ubx_aid_hui {
-	uint32_t health;
-	double   utc_a1;
-	double   utc_a0;
-	int32_t  utc_tot;
-	int16_t  utc_wnt;
-	int16_t  utc_ls;
-	int16_t  utc_wnf;
-	int16_t  utc_dn;
-	int16_t  utc_lsf;
-	int16_t  utc_spare;
-	float    klob_a0;
-	float    klob_a1;
-	float    klob_a2;
-	float    klob_a3;
-	float    klob_b0;
-	float    klob_b1;
-	float    klob_b2;
-	float    klob_b3;
-	uint32_t flags;
-} __attribute__((packed));
-
-struct ubx_aid_alm {
-	uint32_t sv_id;
-	uint32_t gps_week;
-	uint32_t alm_words[8];	/* Present only if 'gps_week' != 0 */
-} __attribute__((packed));
-
-struct ubx_aid_eph {
-	uint32_t sv_id;
-	uint32_t present;
-	uint32_t eph_words[24];	/* Present only if 'present' != 0 */
-} __attribute__((packed));
-
-
-/* Message handler */
-typedef void (*ubx_msg_handler_t)(
-	struct ubx_hdr *hdr, void *payload, int payload_len, void *userdata);
-
-struct ubx_dispatch_entry {
-	uint8_t msg_class;
-	uint8_t msg_id;
-	ubx_msg_handler_t handler;
-};
-
-#define UBX_DISPATCH(kls,id,hdl) {		\
-	.msg_class = UBX_CLASS_ ## kls ,	\
-	.msg_id = UBX_ ## kls ## _ ## id,	\
-	.handler = (hdl),			\
-}
-
-
-/* Methods */
-int ubx_msg_dispatch(struct ubx_dispatch_entry *dt,
-                     void *msg, int len, void *userdata);
-
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* __UBX_H__ */
-