/*
 * Generated by asn1c-0.9.23 (http://lionet.info/asn1c)
 * From ASN.1 module "MAP-MS-DataTypes"
 * 	found in "../asn1src/MAP-MS-DataTypes.asn"
 * 	`asn1c -gen-PER -fskeletons-copy -fnative-types`
 */

#include "PDP-ContextInfo.h"

static asn_TYPE_member_t asn_MBR_PDP_ContextInfo_1[] = {
	{ ATF_NOFLAGS, 0, offsetof(struct PDP_ContextInfo, pdp_ContextIdentifier),
		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_ContextId,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"pdp-ContextIdentifier"
		},
	{ ATF_POINTER, 1, offsetof(struct PDP_ContextInfo, pdp_ContextActive),
		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_NULL,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"pdp-ContextActive"
		},
	{ ATF_NOFLAGS, 0, offsetof(struct PDP_ContextInfo, pdp_Type),
		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_PDP_Type,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"pdp-Type"
		},
	{ ATF_POINTER, 26, offsetof(struct PDP_ContextInfo, pdp_Address),
		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_PDP_Address,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"pdp-Address"
		},
	{ ATF_POINTER, 25, offsetof(struct PDP_ContextInfo, apn_Subscribed),
		(ASN_TAG_CLASS_CONTEXT | (4 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_APN,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"apn-Subscribed"
		},
	{ ATF_POINTER, 24, offsetof(struct PDP_ContextInfo, apn_InUse),
		(ASN_TAG_CLASS_CONTEXT | (5 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_APN,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"apn-InUse"
		},
	{ ATF_POINTER, 23, offsetof(struct PDP_ContextInfo, nsapi),
		(ASN_TAG_CLASS_CONTEXT | (6 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_NSAPI,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"nsapi"
		},
	{ ATF_POINTER, 22, offsetof(struct PDP_ContextInfo, transactionId),
		(ASN_TAG_CLASS_CONTEXT | (7 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_TransactionId,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"transactionId"
		},
	{ ATF_POINTER, 21, offsetof(struct PDP_ContextInfo, teid_ForGnAndGp),
		(ASN_TAG_CLASS_CONTEXT | (8 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_TEID,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"teid-ForGnAndGp"
		},
	{ ATF_POINTER, 20, offsetof(struct PDP_ContextInfo, teid_ForIu),
		(ASN_TAG_CLASS_CONTEXT | (9 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_TEID,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"teid-ForIu"
		},
	{ ATF_POINTER, 19, offsetof(struct PDP_ContextInfo, ggsn_Address),
		(ASN_TAG_CLASS_CONTEXT | (10 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_GSN_Address,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"ggsn-Address"
		},
	{ ATF_POINTER, 18, offsetof(struct PDP_ContextInfo, qos_Subscribed),
		(ASN_TAG_CLASS_CONTEXT | (11 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_Ext_QoS_Subscribed,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"qos-Subscribed"
		},
	{ ATF_POINTER, 17, offsetof(struct PDP_ContextInfo, qos_Requested),
		(ASN_TAG_CLASS_CONTEXT | (12 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_Ext_QoS_Subscribed,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"qos-Requested"
		},
	{ ATF_POINTER, 16, offsetof(struct PDP_ContextInfo, qos_Negotiated),
		(ASN_TAG_CLASS_CONTEXT | (13 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_Ext_QoS_Subscribed,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"qos-Negotiated"
		},
	{ ATF_POINTER, 15, offsetof(struct PDP_ContextInfo, chargingId),
		(ASN_TAG_CLASS_CONTEXT | (14 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_GPRSChargingID,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"chargingId"
		},
	{ ATF_POINTER, 14, offsetof(struct PDP_ContextInfo, chargingCharacteristics),
		(ASN_TAG_CLASS_CONTEXT | (15 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_ChargingCharacteristics,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"chargingCharacteristics"
		},
	{ ATF_POINTER, 13, offsetof(struct PDP_ContextInfo, rnc_Address),
		(ASN_TAG_CLASS_CONTEXT | (16 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_GSN_Address,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"rnc-Address"
		},
	{ ATF_POINTER, 12, offsetof(struct PDP_ContextInfo, extensionContainer),
		(ASN_TAG_CLASS_CONTEXT | (17 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_ExtensionContainer,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"extensionContainer"
		},
	{ ATF_POINTER, 11, offsetof(struct PDP_ContextInfo, qos2_Subscribed),
		(ASN_TAG_CLASS_CONTEXT | (18 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_Ext2_QoS_Subscribed,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"qos2-Subscribed"
		},
	{ ATF_POINTER, 10, offsetof(struct PDP_ContextInfo, qos2_Requested),
		(ASN_TAG_CLASS_CONTEXT | (19 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_Ext2_QoS_Subscribed,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"qos2-Requested"
		},
	{ ATF_POINTER, 9, offsetof(struct PDP_ContextInfo, qos2_Negotiated),
		(ASN_TAG_CLASS_CONTEXT | (20 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_Ext2_QoS_Subscribed,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"qos2-Negotiated"
		},
	{ ATF_POINTER, 8, offsetof(struct PDP_ContextInfo, qos3_Subscribed),
		(ASN_TAG_CLASS_CONTEXT | (21 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_Ext3_QoS_Subscribed,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"qos3-Subscribed"
		},
	{ ATF_POINTER, 7, offsetof(struct PDP_ContextInfo, qos3_Requested),
		(ASN_TAG_CLASS_CONTEXT | (22 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_Ext3_QoS_Subscribed,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"qos3-Requested"
		},
	{ ATF_POINTER, 6, offsetof(struct PDP_ContextInfo, qos3_Negotiated),
		(ASN_TAG_CLASS_CONTEXT | (23 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_Ext3_QoS_Subscribed,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"qos3-Negotiated"
		},
	{ ATF_POINTER, 5, offsetof(struct PDP_ContextInfo, qos4_Subscribed),
		(ASN_TAG_CLASS_CONTEXT | (25 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_Ext4_QoS_Subscribed,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"qos4-Subscribed"
		},
	{ ATF_POINTER, 4, offsetof(struct PDP_ContextInfo, qos4_Requested),
		(ASN_TAG_CLASS_CONTEXT | (26 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_Ext4_QoS_Subscribed,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"qos4-Requested"
		},
	{ ATF_POINTER, 3, offsetof(struct PDP_ContextInfo, qos4_Negotiated),
		(ASN_TAG_CLASS_CONTEXT | (27 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_Ext4_QoS_Subscribed,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"qos4-Negotiated"
		},
	{ ATF_POINTER, 2, offsetof(struct PDP_ContextInfo, ext_pdp_Type),
		(ASN_TAG_CLASS_CONTEXT | (28 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_Ext_PDP_Type,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"ext-pdp-Type"
		},
	{ ATF_POINTER, 1, offsetof(struct PDP_ContextInfo, ext_pdp_Address),
		(ASN_TAG_CLASS_CONTEXT | (29 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_PDP_Address,
		0,	/* Defer constraints checking to the member type */
		0,	/* No PER visible constraints */
		0,
		"ext-pdp-Address"
		},
};
static int asn_MAP_PDP_ContextInfo_oms_1[] = { 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28 };
static ber_tlv_tag_t asn_DEF_PDP_ContextInfo_tags_1[] = {
	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static asn_TYPE_tag2member_t asn_MAP_PDP_ContextInfo_tag2el_1[] = {
    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* pdp-ContextIdentifier at 2722 */
    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pdp-ContextActive at 2723 */
    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* pdp-Type at 2724 */
    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* pdp-Address at 2725 */
    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* apn-Subscribed at 2726 */
    { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* apn-InUse at 2727 */
    { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* nsapi at 2728 */
    { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* transactionId at 2729 */
    { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 }, /* teid-ForGnAndGp at 2730 */
    { (ASN_TAG_CLASS_CONTEXT | (9 << 2)), 9, 0, 0 }, /* teid-ForIu at 2731 */
    { (ASN_TAG_CLASS_CONTEXT | (10 << 2)), 10, 0, 0 }, /* ggsn-Address at 2732 */
    { (ASN_TAG_CLASS_CONTEXT | (11 << 2)), 11, 0, 0 }, /* qos-Subscribed at 2733 */
    { (ASN_TAG_CLASS_CONTEXT | (12 << 2)), 12, 0, 0 }, /* qos-Requested at 2734 */
    { (ASN_TAG_CLASS_CONTEXT | (13 << 2)), 13, 0, 0 }, /* qos-Negotiated at 2735 */
    { (ASN_TAG_CLASS_CONTEXT | (14 << 2)), 14, 0, 0 }, /* chargingId at 2736 */
    { (ASN_TAG_CLASS_CONTEXT | (15 << 2)), 15, 0, 0 }, /* chargingCharacteristics at 2737 */
    { (ASN_TAG_CLASS_CONTEXT | (16 << 2)), 16, 0, 0 }, /* rnc-Address at 2738 */
    { (ASN_TAG_CLASS_CONTEXT | (17 << 2)), 17, 0, 0 }, /* extensionContainer at 2739 */
    { (ASN_TAG_CLASS_CONTEXT | (18 << 2)), 18, 0, 0 }, /* qos2-Subscribed at 2741 */
    { (ASN_TAG_CLASS_CONTEXT | (19 << 2)), 19, 0, 0 }, /* qos2-Requested at 2743 */
    { (ASN_TAG_CLASS_CONTEXT | (20 << 2)), 20, 0, 0 }, /* qos2-Negotiated at 2745 */
    { (ASN_TAG_CLASS_CONTEXT | (21 << 2)), 21, 0, 0 }, /* qos3-Subscribed at 2747 */
    { (ASN_TAG_CLASS_CONTEXT | (22 << 2)), 22, 0, 0 }, /* qos3-Requested at 2749 */
    { (ASN_TAG_CLASS_CONTEXT | (23 << 2)), 23, 0, 0 }, /* qos3-Negotiated at 2751 */
    { (ASN_TAG_CLASS_CONTEXT | (25 << 2)), 24, 0, 0 }, /* qos4-Subscribed at 2753 */
    { (ASN_TAG_CLASS_CONTEXT | (26 << 2)), 25, 0, 0 }, /* qos4-Requested at 2755 */
    { (ASN_TAG_CLASS_CONTEXT | (27 << 2)), 26, 0, 0 }, /* qos4-Negotiated at 2757 */
    { (ASN_TAG_CLASS_CONTEXT | (28 << 2)), 27, 0, 0 }, /* ext-pdp-Type at 2759 */
    { (ASN_TAG_CLASS_CONTEXT | (29 << 2)), 28, 0, 0 } /* ext-pdp-Address at 2762 */
};
static asn_SEQUENCE_specifics_t asn_SPC_PDP_ContextInfo_specs_1 = {
	sizeof(struct PDP_ContextInfo),
	offsetof(struct PDP_ContextInfo, _asn_ctx),
	asn_MAP_PDP_ContextInfo_tag2el_1,
	29,	/* Count of tags in the map */
	asn_MAP_PDP_ContextInfo_oms_1,	/* Optional members */
	16, 11,	/* Root/Additions */
	17,	/* Start extensions */
	30	/* Stop extensions */
};
asn_TYPE_descriptor_t asn_DEF_PDP_ContextInfo = {
	"PDP-ContextInfo",
	"PDP-ContextInfo",
	SEQUENCE_free,
	SEQUENCE_print,
	SEQUENCE_constraint,
	SEQUENCE_decode_ber,
	SEQUENCE_encode_der,
	SEQUENCE_decode_xer,
	SEQUENCE_encode_xer,
	SEQUENCE_decode_uper,
	SEQUENCE_encode_uper,
	0,	/* Use generic outmost tag fetcher */
	asn_DEF_PDP_ContextInfo_tags_1,
	sizeof(asn_DEF_PDP_ContextInfo_tags_1)
		/sizeof(asn_DEF_PDP_ContextInfo_tags_1[0]), /* 1 */
	asn_DEF_PDP_ContextInfo_tags_1,	/* Same as above */
	sizeof(asn_DEF_PDP_ContextInfo_tags_1)
		/sizeof(asn_DEF_PDP_ContextInfo_tags_1[0]), /* 1 */
	0,	/* No PER visible constraints */
	asn_MBR_PDP_ContextInfo_1,
	29,	/* Elements count */
	&asn_SPC_PDP_ContextInfo_specs_1	/* Additional specs */
};

