/*
 * Generated by asn1c-0.9.29 (http://lionet.info/asn1c)
 * From ASN.1 module "NR-RRC-Definitions"
 * 	found in "asn/nr-rrc-15.6.0.asn1"
 * 	`asn1c -fcompound-names -pdu=all -findirect-choice -fno-include-deps -gen-PER -no-gen-OER -no-gen-example -D rrc`
 */

#include "ASN_RRC_PDCP-Config.h"

/*
 * This type is implemented using NativeEnumerated,
 * so here we adjust the DEF accordingly.
 */
/*
 * This type is implemented using NativeEnumerated,
 * so here we adjust the DEF accordingly.
 */
/*
 * This type is implemented using NativeEnumerated,
 * so here we adjust the DEF accordingly.
 */
/*
 * This type is implemented using NativeEnumerated,
 * so here we adjust the DEF accordingly.
 */
static int
memb_ASN_RRC_maxCID_constraint_28(const asn_TYPE_descriptor_t *td, const void *sptr,
			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
	long value;
	
	if(!sptr) {
		ASN__CTFAIL(app_key, td, sptr,
			"%s: value not given (%s:%d)",
			td->name, __FILE__, __LINE__);
		return -1;
	}
	
	value = *(const long *)sptr;
	
	if((value >= 1 && value <= 16383)) {
		/* Constraint check succeeded */
		return 0;
	} else {
		ASN__CTFAIL(app_key, td, sptr,
			"%s: constraint failed (%s:%d)",
			td->name, __FILE__, __LINE__);
		return -1;
	}
}

/*
 * This type is implemented using NativeEnumerated,
 * so here we adjust the DEF accordingly.
 */
static int
memb_ASN_RRC_maxCID_constraint_42(const asn_TYPE_descriptor_t *td, const void *sptr,
			asn_app_constraint_failed_f *ctfailcb, void *app_key) {
	long value;
	
	if(!sptr) {
		ASN__CTFAIL(app_key, td, sptr,
			"%s: value not given (%s:%d)",
			td->name, __FILE__, __LINE__);
		return -1;
	}
	
	value = *(const long *)sptr;
	
	if((value >= 1 && value <= 16383)) {
		/* Constraint check succeeded */
		return 0;
	} else {
		ASN__CTFAIL(app_key, td, sptr,
			"%s: constraint failed (%s:%d)",
			td->name, __FILE__, __LINE__);
		return -1;
	}
}

/*
 * This type is implemented using NativeEnumerated,
 * so here we adjust the DEF accordingly.
 */
/*
 * This type is implemented using NativeEnumerated,
 * so here we adjust the DEF accordingly.
 */
/*
 * This type is implemented using NativeEnumerated,
 * so here we adjust the DEF accordingly.
 */
/*
 * This type is implemented using NativeEnumerated,
 * so here we adjust the DEF accordingly.
 */
/*
 * This type is implemented using NativeEnumerated,
 * so here we adjust the DEF accordingly.
 */
static asn_per_constraints_t asn_PER_type_ASN_RRC_discardTimer_constr_3 CC_NOTUSED = {
	{ APC_CONSTRAINED,	 4,  4,  0,  15 }	/* (0..15) */,
	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
	0, 0	/* No PER value map */
};
static asn_per_constraints_t asn_PER_type_ASN_RRC_pdcp_SN_SizeUL_constr_20 CC_NOTUSED = {
	{ APC_CONSTRAINED,	 1,  1,  0,  1 }	/* (0..1) */,
	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
	0, 0	/* No PER value map */
};
static asn_per_constraints_t asn_PER_type_ASN_RRC_pdcp_SN_SizeDL_constr_23 CC_NOTUSED = {
	{ APC_CONSTRAINED,	 1,  1,  0,  1 }	/* (0..1) */,
	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
	0, 0	/* No PER value map */
};
static asn_per_constraints_t asn_PER_type_ASN_RRC_drb_ContinueROHC_constr_40 CC_NOTUSED = {
	{ APC_CONSTRAINED,	 0,  0,  0,  0 }	/* (0..0) */,
	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
	0, 0	/* No PER value map */
};
static asn_per_constraints_t asn_PER_memb_ASN_RRC_maxCID_constr_29 CC_NOTUSED = {
	{ APC_CONSTRAINED,	 14,  14,  1,  16383 }	/* (1..16383) */,
	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
	0, 0	/* No PER value map */
};
static asn_per_constraints_t asn_PER_type_ASN_RRC_drb_ContinueROHC_constr_46 CC_NOTUSED = {
	{ APC_CONSTRAINED,	 0,  0,  0,  0 }	/* (0..0) */,
	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
	0, 0	/* No PER value map */
};
static asn_per_constraints_t asn_PER_memb_ASN_RRC_maxCID_constr_43 CC_NOTUSED = {
	{ APC_CONSTRAINED,	 14,  14,  1,  16383 }	/* (1..16383) */,
	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
	0, 0	/* No PER value map */
};
static asn_per_constraints_t asn_PER_type_ASN_RRC_headerCompression_constr_26 CC_NOTUSED = {
	{ APC_CONSTRAINED | APC_EXTENSIBLE,  2,  2,  0,  2 }	/* (0..2,...) */,
	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
	0, 0	/* No PER value map */
};
static asn_per_constraints_t asn_PER_type_ASN_RRC_integrityProtection_constr_49 CC_NOTUSED = {
	{ APC_CONSTRAINED,	 0,  0,  0,  0 }	/* (0..0) */,
	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
	0, 0	/* No PER value map */
};
static asn_per_constraints_t asn_PER_type_ASN_RRC_statusReportRequired_constr_51 CC_NOTUSED = {
	{ APC_CONSTRAINED,	 0,  0,  0,  0 }	/* (0..0) */,
	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
	0, 0	/* No PER value map */
};
static asn_per_constraints_t asn_PER_type_ASN_RRC_outOfOrderDelivery_constr_53 CC_NOTUSED = {
	{ APC_CONSTRAINED,	 0,  0,  0,  0 }	/* (0..0) */,
	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
	0, 0	/* No PER value map */
};
static asn_per_constraints_t asn_PER_type_ASN_RRC_t_Reordering_constr_61 CC_NOTUSED = {
	{ APC_CONSTRAINED,	 6,  6,  0,  63 }	/* (0..63) */,
	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
	0, 0	/* No PER value map */
};
static asn_per_constraints_t asn_PER_type_ASN_RRC_cipheringDisabled_constr_128 CC_NOTUSED = {
	{ APC_CONSTRAINED,	 0,  0,  0,  0 }	/* (0..0) */,
	{ APC_UNCONSTRAINED,	-1, -1,  0,  0 },
	0, 0	/* No PER value map */
};
static const asn_INTEGER_enum_map_t asn_MAP_ASN_RRC_discardTimer_value2enum_3[] = {
	{ 0,	4,	"ms10" },
	{ 1,	4,	"ms20" },
	{ 2,	4,	"ms30" },
	{ 3,	4,	"ms40" },
	{ 4,	4,	"ms50" },
	{ 5,	4,	"ms60" },
	{ 6,	4,	"ms75" },
	{ 7,	5,	"ms100" },
	{ 8,	5,	"ms150" },
	{ 9,	5,	"ms200" },
	{ 10,	5,	"ms250" },
	{ 11,	5,	"ms300" },
	{ 12,	5,	"ms500" },
	{ 13,	5,	"ms750" },
	{ 14,	6,	"ms1500" },
	{ 15,	8,	"infinity" }
};
static const unsigned int asn_MAP_ASN_RRC_discardTimer_enum2value_3[] = {
	15,	/* infinity(15) */
	0,	/* ms10(0) */
	7,	/* ms100(7) */
	8,	/* ms150(8) */
	14,	/* ms1500(14) */
	1,	/* ms20(1) */
	9,	/* ms200(9) */
	10,	/* ms250(10) */
	2,	/* ms30(2) */
	11,	/* ms300(11) */
	3,	/* ms40(3) */
	4,	/* ms50(4) */
	12,	/* ms500(12) */
	5,	/* ms60(5) */
	6,	/* ms75(6) */
	13	/* ms750(13) */
};
static const asn_INTEGER_specifics_t asn_SPC_ASN_RRC_discardTimer_specs_3 = {
	asn_MAP_ASN_RRC_discardTimer_value2enum_3,	/* "tag" => N; sorted by tag */
	asn_MAP_ASN_RRC_discardTimer_enum2value_3,	/* N => "tag"; sorted by N */
	16,	/* Number of elements in the maps */
	0,	/* Enumeration is not extensible */
	1,	/* Strict enumeration */
	0,	/* Native long size */
	0
};
static const ber_tlv_tag_t asn_DEF_ASN_RRC_discardTimer_tags_3[] = {
	(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
	(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
};
static /* Use -fall-defs-global to expose */
asn_TYPE_descriptor_t asn_DEF_ASN_RRC_discardTimer_3 = {
	"discardTimer",
	"discardTimer",
	&asn_OP_NativeEnumerated,
	asn_DEF_ASN_RRC_discardTimer_tags_3,
	sizeof(asn_DEF_ASN_RRC_discardTimer_tags_3)
		/sizeof(asn_DEF_ASN_RRC_discardTimer_tags_3[0]) - 1, /* 1 */
	asn_DEF_ASN_RRC_discardTimer_tags_3,	/* Same as above */
	sizeof(asn_DEF_ASN_RRC_discardTimer_tags_3)
		/sizeof(asn_DEF_ASN_RRC_discardTimer_tags_3[0]), /* 2 */
	{ 0, &asn_PER_type_ASN_RRC_discardTimer_constr_3, NativeEnumerated_constraint },
	0, 0,	/* Defined elsewhere */
	&asn_SPC_ASN_RRC_discardTimer_specs_3	/* Additional specs */
};

static const asn_INTEGER_enum_map_t asn_MAP_ASN_RRC_pdcp_SN_SizeUL_value2enum_20[] = {
	{ 0,	9,	"len12bits" },
	{ 1,	9,	"len18bits" }
};
static const unsigned int asn_MAP_ASN_RRC_pdcp_SN_SizeUL_enum2value_20[] = {
	0,	/* len12bits(0) */
	1	/* len18bits(1) */
};
static const asn_INTEGER_specifics_t asn_SPC_ASN_RRC_pdcp_SN_SizeUL_specs_20 = {
	asn_MAP_ASN_RRC_pdcp_SN_SizeUL_value2enum_20,	/* "tag" => N; sorted by tag */
	asn_MAP_ASN_RRC_pdcp_SN_SizeUL_enum2value_20,	/* N => "tag"; sorted by N */
	2,	/* Number of elements in the maps */
	0,	/* Enumeration is not extensible */
	1,	/* Strict enumeration */
	0,	/* Native long size */
	0
};
static const ber_tlv_tag_t asn_DEF_ASN_RRC_pdcp_SN_SizeUL_tags_20[] = {
	(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
	(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
};
static /* Use -fall-defs-global to expose */
asn_TYPE_descriptor_t asn_DEF_ASN_RRC_pdcp_SN_SizeUL_20 = {
	"pdcp-SN-SizeUL",
	"pdcp-SN-SizeUL",
	&asn_OP_NativeEnumerated,
	asn_DEF_ASN_RRC_pdcp_SN_SizeUL_tags_20,
	sizeof(asn_DEF_ASN_RRC_pdcp_SN_SizeUL_tags_20)
		/sizeof(asn_DEF_ASN_RRC_pdcp_SN_SizeUL_tags_20[0]) - 1, /* 1 */
	asn_DEF_ASN_RRC_pdcp_SN_SizeUL_tags_20,	/* Same as above */
	sizeof(asn_DEF_ASN_RRC_pdcp_SN_SizeUL_tags_20)
		/sizeof(asn_DEF_ASN_RRC_pdcp_SN_SizeUL_tags_20[0]), /* 2 */
	{ 0, &asn_PER_type_ASN_RRC_pdcp_SN_SizeUL_constr_20, NativeEnumerated_constraint },
	0, 0,	/* Defined elsewhere */
	&asn_SPC_ASN_RRC_pdcp_SN_SizeUL_specs_20	/* Additional specs */
};

static const asn_INTEGER_enum_map_t asn_MAP_ASN_RRC_pdcp_SN_SizeDL_value2enum_23[] = {
	{ 0,	9,	"len12bits" },
	{ 1,	9,	"len18bits" }
};
static const unsigned int asn_MAP_ASN_RRC_pdcp_SN_SizeDL_enum2value_23[] = {
	0,	/* len12bits(0) */
	1	/* len18bits(1) */
};
static const asn_INTEGER_specifics_t asn_SPC_ASN_RRC_pdcp_SN_SizeDL_specs_23 = {
	asn_MAP_ASN_RRC_pdcp_SN_SizeDL_value2enum_23,	/* "tag" => N; sorted by tag */
	asn_MAP_ASN_RRC_pdcp_SN_SizeDL_enum2value_23,	/* N => "tag"; sorted by N */
	2,	/* Number of elements in the maps */
	0,	/* Enumeration is not extensible */
	1,	/* Strict enumeration */
	0,	/* Native long size */
	0
};
static const ber_tlv_tag_t asn_DEF_ASN_RRC_pdcp_SN_SizeDL_tags_23[] = {
	(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
	(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
};
static /* Use -fall-defs-global to expose */
asn_TYPE_descriptor_t asn_DEF_ASN_RRC_pdcp_SN_SizeDL_23 = {
	"pdcp-SN-SizeDL",
	"pdcp-SN-SizeDL",
	&asn_OP_NativeEnumerated,
	asn_DEF_ASN_RRC_pdcp_SN_SizeDL_tags_23,
	sizeof(asn_DEF_ASN_RRC_pdcp_SN_SizeDL_tags_23)
		/sizeof(asn_DEF_ASN_RRC_pdcp_SN_SizeDL_tags_23[0]) - 1, /* 1 */
	asn_DEF_ASN_RRC_pdcp_SN_SizeDL_tags_23,	/* Same as above */
	sizeof(asn_DEF_ASN_RRC_pdcp_SN_SizeDL_tags_23)
		/sizeof(asn_DEF_ASN_RRC_pdcp_SN_SizeDL_tags_23[0]), /* 2 */
	{ 0, &asn_PER_type_ASN_RRC_pdcp_SN_SizeDL_constr_23, NativeEnumerated_constraint },
	0, 0,	/* Defined elsewhere */
	&asn_SPC_ASN_RRC_pdcp_SN_SizeDL_specs_23	/* Additional specs */
};

static int asn_DFL_29_cmp_15(const void *sptr) {
	const long *st = sptr;
	
	if(!st) {
		return -1; /* No value is not a default value */
	}
	
	/* Test default value 15 */
	return (*st != 15);
}
static int asn_DFL_29_set_15(void **sptr) {
	long *st = *sptr;
	
	if(!st) {
		st = (*sptr = CALLOC(1, sizeof(*st)));
		if(!st) return -1;
	}
	
	/* Install default value 15 */
	*st = 15;
	return 0;
}
static asn_TYPE_member_t asn_MBR_ASN_RRC_profiles_30[] = {
	{ ATF_NOFLAGS, 0, offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression__rohc__profiles, profile0x0001),
		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_BOOLEAN,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"profile0x0001"
		},
	{ ATF_NOFLAGS, 0, offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression__rohc__profiles, profile0x0002),
		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_BOOLEAN,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"profile0x0002"
		},
	{ ATF_NOFLAGS, 0, offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression__rohc__profiles, profile0x0003),
		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_BOOLEAN,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"profile0x0003"
		},
	{ ATF_NOFLAGS, 0, offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression__rohc__profiles, profile0x0004),
		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_BOOLEAN,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"profile0x0004"
		},
	{ ATF_NOFLAGS, 0, offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression__rohc__profiles, profile0x0006),
		(ASN_TAG_CLASS_CONTEXT | (4 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_BOOLEAN,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"profile0x0006"
		},
	{ ATF_NOFLAGS, 0, offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression__rohc__profiles, profile0x0101),
		(ASN_TAG_CLASS_CONTEXT | (5 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_BOOLEAN,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"profile0x0101"
		},
	{ ATF_NOFLAGS, 0, offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression__rohc__profiles, profile0x0102),
		(ASN_TAG_CLASS_CONTEXT | (6 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_BOOLEAN,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"profile0x0102"
		},
	{ ATF_NOFLAGS, 0, offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression__rohc__profiles, profile0x0103),
		(ASN_TAG_CLASS_CONTEXT | (7 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_BOOLEAN,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"profile0x0103"
		},
	{ ATF_NOFLAGS, 0, offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression__rohc__profiles, profile0x0104),
		(ASN_TAG_CLASS_CONTEXT | (8 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_BOOLEAN,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"profile0x0104"
		},
};
static const ber_tlv_tag_t asn_DEF_ASN_RRC_profiles_tags_30[] = {
	(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_ASN_RRC_profiles_tag2el_30[] = {
    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* profile0x0001 */
    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* profile0x0002 */
    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* profile0x0003 */
    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* profile0x0004 */
    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* profile0x0006 */
    { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* profile0x0101 */
    { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 }, /* profile0x0102 */
    { (ASN_TAG_CLASS_CONTEXT | (7 << 2)), 7, 0, 0 }, /* profile0x0103 */
    { (ASN_TAG_CLASS_CONTEXT | (8 << 2)), 8, 0, 0 } /* profile0x0104 */
};
static asn_SEQUENCE_specifics_t asn_SPC_ASN_RRC_profiles_specs_30 = {
	sizeof(struct ASN_RRC_PDCP_Config__drb__headerCompression__rohc__profiles),
	offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression__rohc__profiles, _asn_ctx),
	asn_MAP_ASN_RRC_profiles_tag2el_30,
	9,	/* Count of tags in the map */
	0, 0, 0,	/* Optional elements (not needed) */
	-1,	/* First extension addition */
};
static /* Use -fall-defs-global to expose */
asn_TYPE_descriptor_t asn_DEF_ASN_RRC_profiles_30 = {
	"profiles",
	"profiles",
	&asn_OP_SEQUENCE,
	asn_DEF_ASN_RRC_profiles_tags_30,
	sizeof(asn_DEF_ASN_RRC_profiles_tags_30)
		/sizeof(asn_DEF_ASN_RRC_profiles_tags_30[0]) - 1, /* 1 */
	asn_DEF_ASN_RRC_profiles_tags_30,	/* Same as above */
	sizeof(asn_DEF_ASN_RRC_profiles_tags_30)
		/sizeof(asn_DEF_ASN_RRC_profiles_tags_30[0]), /* 2 */
	{ 0, 0, SEQUENCE_constraint },
	asn_MBR_ASN_RRC_profiles_30,
	9,	/* Elements count */
	&asn_SPC_ASN_RRC_profiles_specs_30	/* Additional specs */
};

static const asn_INTEGER_enum_map_t asn_MAP_ASN_RRC_drb_ContinueROHC_value2enum_40[] = {
	{ 0,	4,	"true" }
};
static const unsigned int asn_MAP_ASN_RRC_drb_ContinueROHC_enum2value_40[] = {
	0	/* true(0) */
};
static const asn_INTEGER_specifics_t asn_SPC_ASN_RRC_drb_ContinueROHC_specs_40 = {
	asn_MAP_ASN_RRC_drb_ContinueROHC_value2enum_40,	/* "tag" => N; sorted by tag */
	asn_MAP_ASN_RRC_drb_ContinueROHC_enum2value_40,	/* N => "tag"; sorted by N */
	1,	/* Number of elements in the maps */
	0,	/* Enumeration is not extensible */
	1,	/* Strict enumeration */
	0,	/* Native long size */
	0
};
static const ber_tlv_tag_t asn_DEF_ASN_RRC_drb_ContinueROHC_tags_40[] = {
	(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
	(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
};
static /* Use -fall-defs-global to expose */
asn_TYPE_descriptor_t asn_DEF_ASN_RRC_drb_ContinueROHC_40 = {
	"drb-ContinueROHC",
	"drb-ContinueROHC",
	&asn_OP_NativeEnumerated,
	asn_DEF_ASN_RRC_drb_ContinueROHC_tags_40,
	sizeof(asn_DEF_ASN_RRC_drb_ContinueROHC_tags_40)
		/sizeof(asn_DEF_ASN_RRC_drb_ContinueROHC_tags_40[0]) - 1, /* 1 */
	asn_DEF_ASN_RRC_drb_ContinueROHC_tags_40,	/* Same as above */
	sizeof(asn_DEF_ASN_RRC_drb_ContinueROHC_tags_40)
		/sizeof(asn_DEF_ASN_RRC_drb_ContinueROHC_tags_40[0]), /* 2 */
	{ 0, &asn_PER_type_ASN_RRC_drb_ContinueROHC_constr_40, NativeEnumerated_constraint },
	0, 0,	/* Defined elsewhere */
	&asn_SPC_ASN_RRC_drb_ContinueROHC_specs_40	/* Additional specs */
};

static asn_TYPE_member_t asn_MBR_ASN_RRC_rohc_28[] = {
	{ ATF_POINTER, 1, offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression__rohc, maxCID),
		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_NativeInteger,
		0,
		{ 0, &asn_PER_memb_ASN_RRC_maxCID_constr_29,  memb_ASN_RRC_maxCID_constraint_28 },
		&asn_DFL_29_cmp_15,	/* Compare DEFAULT 15 */
		&asn_DFL_29_set_15,	/* Set DEFAULT 15 */
		"maxCID"
		},
	{ ATF_NOFLAGS, 0, offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression__rohc, profiles),
		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
		0,
		&asn_DEF_ASN_RRC_profiles_30,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"profiles"
		},
	{ ATF_POINTER, 1, offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression__rohc, drb_ContinueROHC),
		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_ASN_RRC_drb_ContinueROHC_40,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"drb-ContinueROHC"
		},
};
static const int asn_MAP_ASN_RRC_rohc_oms_28[] = { 0, 2 };
static const ber_tlv_tag_t asn_DEF_ASN_RRC_rohc_tags_28[] = {
	(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_ASN_RRC_rohc_tag2el_28[] = {
    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* maxCID */
    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* profiles */
    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* drb-ContinueROHC */
};
static asn_SEQUENCE_specifics_t asn_SPC_ASN_RRC_rohc_specs_28 = {
	sizeof(struct ASN_RRC_PDCP_Config__drb__headerCompression__rohc),
	offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression__rohc, _asn_ctx),
	asn_MAP_ASN_RRC_rohc_tag2el_28,
	3,	/* Count of tags in the map */
	asn_MAP_ASN_RRC_rohc_oms_28,	/* Optional members */
	2, 0,	/* Root/Additions */
	-1,	/* First extension addition */
};
static /* Use -fall-defs-global to expose */
asn_TYPE_descriptor_t asn_DEF_ASN_RRC_rohc_28 = {
	"rohc",
	"rohc",
	&asn_OP_SEQUENCE,
	asn_DEF_ASN_RRC_rohc_tags_28,
	sizeof(asn_DEF_ASN_RRC_rohc_tags_28)
		/sizeof(asn_DEF_ASN_RRC_rohc_tags_28[0]) - 1, /* 1 */
	asn_DEF_ASN_RRC_rohc_tags_28,	/* Same as above */
	sizeof(asn_DEF_ASN_RRC_rohc_tags_28)
		/sizeof(asn_DEF_ASN_RRC_rohc_tags_28[0]), /* 2 */
	{ 0, 0, SEQUENCE_constraint },
	asn_MBR_ASN_RRC_rohc_28,
	3,	/* Elements count */
	&asn_SPC_ASN_RRC_rohc_specs_28	/* Additional specs */
};

static int asn_DFL_43_cmp_15(const void *sptr) {
	const long *st = sptr;
	
	if(!st) {
		return -1; /* No value is not a default value */
	}
	
	/* Test default value 15 */
	return (*st != 15);
}
static int asn_DFL_43_set_15(void **sptr) {
	long *st = *sptr;
	
	if(!st) {
		st = (*sptr = CALLOC(1, sizeof(*st)));
		if(!st) return -1;
	}
	
	/* Install default value 15 */
	*st = 15;
	return 0;
}
static asn_TYPE_member_t asn_MBR_ASN_RRC_profiles_44[] = {
	{ ATF_NOFLAGS, 0, offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression__uplinkOnlyROHC__profiles, profile0x0006),
		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_BOOLEAN,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"profile0x0006"
		},
};
static const ber_tlv_tag_t asn_DEF_ASN_RRC_profiles_tags_44[] = {
	(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_ASN_RRC_profiles_tag2el_44[] = {
    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* profile0x0006 */
};
static asn_SEQUENCE_specifics_t asn_SPC_ASN_RRC_profiles_specs_44 = {
	sizeof(struct ASN_RRC_PDCP_Config__drb__headerCompression__uplinkOnlyROHC__profiles),
	offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression__uplinkOnlyROHC__profiles, _asn_ctx),
	asn_MAP_ASN_RRC_profiles_tag2el_44,
	1,	/* Count of tags in the map */
	0, 0, 0,	/* Optional elements (not needed) */
	-1,	/* First extension addition */
};
static /* Use -fall-defs-global to expose */
asn_TYPE_descriptor_t asn_DEF_ASN_RRC_profiles_44 = {
	"profiles",
	"profiles",
	&asn_OP_SEQUENCE,
	asn_DEF_ASN_RRC_profiles_tags_44,
	sizeof(asn_DEF_ASN_RRC_profiles_tags_44)
		/sizeof(asn_DEF_ASN_RRC_profiles_tags_44[0]) - 1, /* 1 */
	asn_DEF_ASN_RRC_profiles_tags_44,	/* Same as above */
	sizeof(asn_DEF_ASN_RRC_profiles_tags_44)
		/sizeof(asn_DEF_ASN_RRC_profiles_tags_44[0]), /* 2 */
	{ 0, 0, SEQUENCE_constraint },
	asn_MBR_ASN_RRC_profiles_44,
	1,	/* Elements count */
	&asn_SPC_ASN_RRC_profiles_specs_44	/* Additional specs */
};

static const asn_INTEGER_enum_map_t asn_MAP_ASN_RRC_drb_ContinueROHC_value2enum_46[] = {
	{ 0,	4,	"true" }
};
static const unsigned int asn_MAP_ASN_RRC_drb_ContinueROHC_enum2value_46[] = {
	0	/* true(0) */
};
static const asn_INTEGER_specifics_t asn_SPC_ASN_RRC_drb_ContinueROHC_specs_46 = {
	asn_MAP_ASN_RRC_drb_ContinueROHC_value2enum_46,	/* "tag" => N; sorted by tag */
	asn_MAP_ASN_RRC_drb_ContinueROHC_enum2value_46,	/* N => "tag"; sorted by N */
	1,	/* Number of elements in the maps */
	0,	/* Enumeration is not extensible */
	1,	/* Strict enumeration */
	0,	/* Native long size */
	0
};
static const ber_tlv_tag_t asn_DEF_ASN_RRC_drb_ContinueROHC_tags_46[] = {
	(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
	(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
};
static /* Use -fall-defs-global to expose */
asn_TYPE_descriptor_t asn_DEF_ASN_RRC_drb_ContinueROHC_46 = {
	"drb-ContinueROHC",
	"drb-ContinueROHC",
	&asn_OP_NativeEnumerated,
	asn_DEF_ASN_RRC_drb_ContinueROHC_tags_46,
	sizeof(asn_DEF_ASN_RRC_drb_ContinueROHC_tags_46)
		/sizeof(asn_DEF_ASN_RRC_drb_ContinueROHC_tags_46[0]) - 1, /* 1 */
	asn_DEF_ASN_RRC_drb_ContinueROHC_tags_46,	/* Same as above */
	sizeof(asn_DEF_ASN_RRC_drb_ContinueROHC_tags_46)
		/sizeof(asn_DEF_ASN_RRC_drb_ContinueROHC_tags_46[0]), /* 2 */
	{ 0, &asn_PER_type_ASN_RRC_drb_ContinueROHC_constr_46, NativeEnumerated_constraint },
	0, 0,	/* Defined elsewhere */
	&asn_SPC_ASN_RRC_drb_ContinueROHC_specs_46	/* Additional specs */
};

static asn_TYPE_member_t asn_MBR_ASN_RRC_uplinkOnlyROHC_42[] = {
	{ ATF_POINTER, 1, offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression__uplinkOnlyROHC, maxCID),
		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_NativeInteger,
		0,
		{ 0, &asn_PER_memb_ASN_RRC_maxCID_constr_43,  memb_ASN_RRC_maxCID_constraint_42 },
		&asn_DFL_43_cmp_15,	/* Compare DEFAULT 15 */
		&asn_DFL_43_set_15,	/* Set DEFAULT 15 */
		"maxCID"
		},
	{ ATF_NOFLAGS, 0, offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression__uplinkOnlyROHC, profiles),
		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
		0,
		&asn_DEF_ASN_RRC_profiles_44,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"profiles"
		},
	{ ATF_POINTER, 1, offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression__uplinkOnlyROHC, drb_ContinueROHC),
		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_ASN_RRC_drb_ContinueROHC_46,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"drb-ContinueROHC"
		},
};
static const int asn_MAP_ASN_RRC_uplinkOnlyROHC_oms_42[] = { 0, 2 };
static const ber_tlv_tag_t asn_DEF_ASN_RRC_uplinkOnlyROHC_tags_42[] = {
	(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_ASN_RRC_uplinkOnlyROHC_tag2el_42[] = {
    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* maxCID */
    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* profiles */
    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* drb-ContinueROHC */
};
static asn_SEQUENCE_specifics_t asn_SPC_ASN_RRC_uplinkOnlyROHC_specs_42 = {
	sizeof(struct ASN_RRC_PDCP_Config__drb__headerCompression__uplinkOnlyROHC),
	offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression__uplinkOnlyROHC, _asn_ctx),
	asn_MAP_ASN_RRC_uplinkOnlyROHC_tag2el_42,
	3,	/* Count of tags in the map */
	asn_MAP_ASN_RRC_uplinkOnlyROHC_oms_42,	/* Optional members */
	2, 0,	/* Root/Additions */
	-1,	/* First extension addition */
};
static /* Use -fall-defs-global to expose */
asn_TYPE_descriptor_t asn_DEF_ASN_RRC_uplinkOnlyROHC_42 = {
	"uplinkOnlyROHC",
	"uplinkOnlyROHC",
	&asn_OP_SEQUENCE,
	asn_DEF_ASN_RRC_uplinkOnlyROHC_tags_42,
	sizeof(asn_DEF_ASN_RRC_uplinkOnlyROHC_tags_42)
		/sizeof(asn_DEF_ASN_RRC_uplinkOnlyROHC_tags_42[0]) - 1, /* 1 */
	asn_DEF_ASN_RRC_uplinkOnlyROHC_tags_42,	/* Same as above */
	sizeof(asn_DEF_ASN_RRC_uplinkOnlyROHC_tags_42)
		/sizeof(asn_DEF_ASN_RRC_uplinkOnlyROHC_tags_42[0]), /* 2 */
	{ 0, 0, SEQUENCE_constraint },
	asn_MBR_ASN_RRC_uplinkOnlyROHC_42,
	3,	/* Elements count */
	&asn_SPC_ASN_RRC_uplinkOnlyROHC_specs_42	/* Additional specs */
};

static asn_TYPE_member_t asn_MBR_ASN_RRC_headerCompression_26[] = {
	{ ATF_NOFLAGS, 0, offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression, choice.notUsed),
		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_NULL,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"notUsed"
		},
	{ ATF_POINTER, 0, offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression, choice.rohc),
		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
		0,
		&asn_DEF_ASN_RRC_rohc_28,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"rohc"
		},
	{ ATF_POINTER, 0, offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression, choice.uplinkOnlyROHC),
		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
		0,
		&asn_DEF_ASN_RRC_uplinkOnlyROHC_42,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"uplinkOnlyROHC"
		},
};
static const asn_TYPE_tag2member_t asn_MAP_ASN_RRC_headerCompression_tag2el_26[] = {
    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* notUsed */
    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* rohc */
    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* uplinkOnlyROHC */
};
static asn_CHOICE_specifics_t asn_SPC_ASN_RRC_headerCompression_specs_26 = {
	sizeof(struct ASN_RRC_PDCP_Config__drb__headerCompression),
	offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression, _asn_ctx),
	offsetof(struct ASN_RRC_PDCP_Config__drb__headerCompression, present),
	sizeof(((struct ASN_RRC_PDCP_Config__drb__headerCompression *)0)->present),
	asn_MAP_ASN_RRC_headerCompression_tag2el_26,
	3,	/* Count of tags in the map */
	0, 0,
	3	/* Extensions start */
};
static /* Use -fall-defs-global to expose */
asn_TYPE_descriptor_t asn_DEF_ASN_RRC_headerCompression_26 = {
	"headerCompression",
	"headerCompression",
	&asn_OP_CHOICE,
	0,	/* No effective tags (pointer) */
	0,	/* No effective tags (count) */
	0,	/* No tags (pointer) */
	0,	/* No tags (count) */
	{ 0, &asn_PER_type_ASN_RRC_headerCompression_constr_26, CHOICE_constraint },
	asn_MBR_ASN_RRC_headerCompression_26,
	3,	/* Elements count */
	&asn_SPC_ASN_RRC_headerCompression_specs_26	/* Additional specs */
};

static const asn_INTEGER_enum_map_t asn_MAP_ASN_RRC_integrityProtection_value2enum_49[] = {
	{ 0,	7,	"enabled" }
};
static const unsigned int asn_MAP_ASN_RRC_integrityProtection_enum2value_49[] = {
	0	/* enabled(0) */
};
static const asn_INTEGER_specifics_t asn_SPC_ASN_RRC_integrityProtection_specs_49 = {
	asn_MAP_ASN_RRC_integrityProtection_value2enum_49,	/* "tag" => N; sorted by tag */
	asn_MAP_ASN_RRC_integrityProtection_enum2value_49,	/* N => "tag"; sorted by N */
	1,	/* Number of elements in the maps */
	0,	/* Enumeration is not extensible */
	1,	/* Strict enumeration */
	0,	/* Native long size */
	0
};
static const ber_tlv_tag_t asn_DEF_ASN_RRC_integrityProtection_tags_49[] = {
	(ASN_TAG_CLASS_CONTEXT | (4 << 2)),
	(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
};
static /* Use -fall-defs-global to expose */
asn_TYPE_descriptor_t asn_DEF_ASN_RRC_integrityProtection_49 = {
	"integrityProtection",
	"integrityProtection",
	&asn_OP_NativeEnumerated,
	asn_DEF_ASN_RRC_integrityProtection_tags_49,
	sizeof(asn_DEF_ASN_RRC_integrityProtection_tags_49)
		/sizeof(asn_DEF_ASN_RRC_integrityProtection_tags_49[0]) - 1, /* 1 */
	asn_DEF_ASN_RRC_integrityProtection_tags_49,	/* Same as above */
	sizeof(asn_DEF_ASN_RRC_integrityProtection_tags_49)
		/sizeof(asn_DEF_ASN_RRC_integrityProtection_tags_49[0]), /* 2 */
	{ 0, &asn_PER_type_ASN_RRC_integrityProtection_constr_49, NativeEnumerated_constraint },
	0, 0,	/* Defined elsewhere */
	&asn_SPC_ASN_RRC_integrityProtection_specs_49	/* Additional specs */
};

static const asn_INTEGER_enum_map_t asn_MAP_ASN_RRC_statusReportRequired_value2enum_51[] = {
	{ 0,	4,	"true" }
};
static const unsigned int asn_MAP_ASN_RRC_statusReportRequired_enum2value_51[] = {
	0	/* true(0) */
};
static const asn_INTEGER_specifics_t asn_SPC_ASN_RRC_statusReportRequired_specs_51 = {
	asn_MAP_ASN_RRC_statusReportRequired_value2enum_51,	/* "tag" => N; sorted by tag */
	asn_MAP_ASN_RRC_statusReportRequired_enum2value_51,	/* N => "tag"; sorted by N */
	1,	/* Number of elements in the maps */
	0,	/* Enumeration is not extensible */
	1,	/* Strict enumeration */
	0,	/* Native long size */
	0
};
static const ber_tlv_tag_t asn_DEF_ASN_RRC_statusReportRequired_tags_51[] = {
	(ASN_TAG_CLASS_CONTEXT | (5 << 2)),
	(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
};
static /* Use -fall-defs-global to expose */
asn_TYPE_descriptor_t asn_DEF_ASN_RRC_statusReportRequired_51 = {
	"statusReportRequired",
	"statusReportRequired",
	&asn_OP_NativeEnumerated,
	asn_DEF_ASN_RRC_statusReportRequired_tags_51,
	sizeof(asn_DEF_ASN_RRC_statusReportRequired_tags_51)
		/sizeof(asn_DEF_ASN_RRC_statusReportRequired_tags_51[0]) - 1, /* 1 */
	asn_DEF_ASN_RRC_statusReportRequired_tags_51,	/* Same as above */
	sizeof(asn_DEF_ASN_RRC_statusReportRequired_tags_51)
		/sizeof(asn_DEF_ASN_RRC_statusReportRequired_tags_51[0]), /* 2 */
	{ 0, &asn_PER_type_ASN_RRC_statusReportRequired_constr_51, NativeEnumerated_constraint },
	0, 0,	/* Defined elsewhere */
	&asn_SPC_ASN_RRC_statusReportRequired_specs_51	/* Additional specs */
};

static const asn_INTEGER_enum_map_t asn_MAP_ASN_RRC_outOfOrderDelivery_value2enum_53[] = {
	{ 0,	4,	"true" }
};
static const unsigned int asn_MAP_ASN_RRC_outOfOrderDelivery_enum2value_53[] = {
	0	/* true(0) */
};
static const asn_INTEGER_specifics_t asn_SPC_ASN_RRC_outOfOrderDelivery_specs_53 = {
	asn_MAP_ASN_RRC_outOfOrderDelivery_value2enum_53,	/* "tag" => N; sorted by tag */
	asn_MAP_ASN_RRC_outOfOrderDelivery_enum2value_53,	/* N => "tag"; sorted by N */
	1,	/* Number of elements in the maps */
	0,	/* Enumeration is not extensible */
	1,	/* Strict enumeration */
	0,	/* Native long size */
	0
};
static const ber_tlv_tag_t asn_DEF_ASN_RRC_outOfOrderDelivery_tags_53[] = {
	(ASN_TAG_CLASS_CONTEXT | (6 << 2)),
	(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
};
static /* Use -fall-defs-global to expose */
asn_TYPE_descriptor_t asn_DEF_ASN_RRC_outOfOrderDelivery_53 = {
	"outOfOrderDelivery",
	"outOfOrderDelivery",
	&asn_OP_NativeEnumerated,
	asn_DEF_ASN_RRC_outOfOrderDelivery_tags_53,
	sizeof(asn_DEF_ASN_RRC_outOfOrderDelivery_tags_53)
		/sizeof(asn_DEF_ASN_RRC_outOfOrderDelivery_tags_53[0]) - 1, /* 1 */
	asn_DEF_ASN_RRC_outOfOrderDelivery_tags_53,	/* Same as above */
	sizeof(asn_DEF_ASN_RRC_outOfOrderDelivery_tags_53)
		/sizeof(asn_DEF_ASN_RRC_outOfOrderDelivery_tags_53[0]), /* 2 */
	{ 0, &asn_PER_type_ASN_RRC_outOfOrderDelivery_constr_53, NativeEnumerated_constraint },
	0, 0,	/* Defined elsewhere */
	&asn_SPC_ASN_RRC_outOfOrderDelivery_specs_53	/* Additional specs */
};

static asn_TYPE_member_t asn_MBR_ASN_RRC_drb_2[] = {
	{ ATF_POINTER, 3, offsetof(struct ASN_RRC_PDCP_Config__drb, discardTimer),
		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_ASN_RRC_discardTimer_3,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"discardTimer"
		},
	{ ATF_POINTER, 2, offsetof(struct ASN_RRC_PDCP_Config__drb, pdcp_SN_SizeUL),
		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_ASN_RRC_pdcp_SN_SizeUL_20,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"pdcp-SN-SizeUL"
		},
	{ ATF_POINTER, 1, offsetof(struct ASN_RRC_PDCP_Config__drb, pdcp_SN_SizeDL),
		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_ASN_RRC_pdcp_SN_SizeDL_23,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"pdcp-SN-SizeDL"
		},
	{ ATF_NOFLAGS, 0, offsetof(struct ASN_RRC_PDCP_Config__drb, headerCompression),
		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
		+1,	/* EXPLICIT tag at current level */
		&asn_DEF_ASN_RRC_headerCompression_26,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"headerCompression"
		},
	{ ATF_POINTER, 3, offsetof(struct ASN_RRC_PDCP_Config__drb, integrityProtection),
		(ASN_TAG_CLASS_CONTEXT | (4 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_ASN_RRC_integrityProtection_49,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"integrityProtection"
		},
	{ ATF_POINTER, 2, offsetof(struct ASN_RRC_PDCP_Config__drb, statusReportRequired),
		(ASN_TAG_CLASS_CONTEXT | (5 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_ASN_RRC_statusReportRequired_51,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"statusReportRequired"
		},
	{ ATF_POINTER, 1, offsetof(struct ASN_RRC_PDCP_Config__drb, outOfOrderDelivery),
		(ASN_TAG_CLASS_CONTEXT | (6 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_ASN_RRC_outOfOrderDelivery_53,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"outOfOrderDelivery"
		},
};
static const int asn_MAP_ASN_RRC_drb_oms_2[] = { 0, 1, 2, 4, 5, 6 };
static const ber_tlv_tag_t asn_DEF_ASN_RRC_drb_tags_2[] = {
	(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_ASN_RRC_drb_tag2el_2[] = {
    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* discardTimer */
    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* pdcp-SN-SizeUL */
    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* pdcp-SN-SizeDL */
    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 }, /* headerCompression */
    { (ASN_TAG_CLASS_CONTEXT | (4 << 2)), 4, 0, 0 }, /* integrityProtection */
    { (ASN_TAG_CLASS_CONTEXT | (5 << 2)), 5, 0, 0 }, /* statusReportRequired */
    { (ASN_TAG_CLASS_CONTEXT | (6 << 2)), 6, 0, 0 } /* outOfOrderDelivery */
};
static asn_SEQUENCE_specifics_t asn_SPC_ASN_RRC_drb_specs_2 = {
	sizeof(struct ASN_RRC_PDCP_Config__drb),
	offsetof(struct ASN_RRC_PDCP_Config__drb, _asn_ctx),
	asn_MAP_ASN_RRC_drb_tag2el_2,
	7,	/* Count of tags in the map */
	asn_MAP_ASN_RRC_drb_oms_2,	/* Optional members */
	6, 0,	/* Root/Additions */
	-1,	/* First extension addition */
};
static /* Use -fall-defs-global to expose */
asn_TYPE_descriptor_t asn_DEF_ASN_RRC_drb_2 = {
	"drb",
	"drb",
	&asn_OP_SEQUENCE,
	asn_DEF_ASN_RRC_drb_tags_2,
	sizeof(asn_DEF_ASN_RRC_drb_tags_2)
		/sizeof(asn_DEF_ASN_RRC_drb_tags_2[0]) - 1, /* 1 */
	asn_DEF_ASN_RRC_drb_tags_2,	/* Same as above */
	sizeof(asn_DEF_ASN_RRC_drb_tags_2)
		/sizeof(asn_DEF_ASN_RRC_drb_tags_2[0]), /* 2 */
	{ 0, 0, SEQUENCE_constraint },
	asn_MBR_ASN_RRC_drb_2,
	7,	/* Elements count */
	&asn_SPC_ASN_RRC_drb_specs_2	/* Additional specs */
};

static asn_TYPE_member_t asn_MBR_ASN_RRC_primaryPath_56[] = {
	{ ATF_POINTER, 2, offsetof(struct ASN_RRC_PDCP_Config__moreThanOneRLC__primaryPath, cellGroup),
		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_ASN_RRC_CellGroupId,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"cellGroup"
		},
	{ ATF_POINTER, 1, offsetof(struct ASN_RRC_PDCP_Config__moreThanOneRLC__primaryPath, logicalChannel),
		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_ASN_RRC_LogicalChannelIdentity,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"logicalChannel"
		},
};
static const int asn_MAP_ASN_RRC_primaryPath_oms_56[] = { 0, 1 };
static const ber_tlv_tag_t asn_DEF_ASN_RRC_primaryPath_tags_56[] = {
	(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_ASN_RRC_primaryPath_tag2el_56[] = {
    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* cellGroup */
    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 } /* logicalChannel */
};
static asn_SEQUENCE_specifics_t asn_SPC_ASN_RRC_primaryPath_specs_56 = {
	sizeof(struct ASN_RRC_PDCP_Config__moreThanOneRLC__primaryPath),
	offsetof(struct ASN_RRC_PDCP_Config__moreThanOneRLC__primaryPath, _asn_ctx),
	asn_MAP_ASN_RRC_primaryPath_tag2el_56,
	2,	/* Count of tags in the map */
	asn_MAP_ASN_RRC_primaryPath_oms_56,	/* Optional members */
	2, 0,	/* Root/Additions */
	-1,	/* First extension addition */
};
static /* Use -fall-defs-global to expose */
asn_TYPE_descriptor_t asn_DEF_ASN_RRC_primaryPath_56 = {
	"primaryPath",
	"primaryPath",
	&asn_OP_SEQUENCE,
	asn_DEF_ASN_RRC_primaryPath_tags_56,
	sizeof(asn_DEF_ASN_RRC_primaryPath_tags_56)
		/sizeof(asn_DEF_ASN_RRC_primaryPath_tags_56[0]) - 1, /* 1 */
	asn_DEF_ASN_RRC_primaryPath_tags_56,	/* Same as above */
	sizeof(asn_DEF_ASN_RRC_primaryPath_tags_56)
		/sizeof(asn_DEF_ASN_RRC_primaryPath_tags_56[0]), /* 2 */
	{ 0, 0, SEQUENCE_constraint },
	asn_MBR_ASN_RRC_primaryPath_56,
	2,	/* Elements count */
	&asn_SPC_ASN_RRC_primaryPath_specs_56	/* Additional specs */
};

static asn_TYPE_member_t asn_MBR_ASN_RRC_moreThanOneRLC_55[] = {
	{ ATF_NOFLAGS, 0, offsetof(struct ASN_RRC_PDCP_Config__moreThanOneRLC, primaryPath),
		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
		0,
		&asn_DEF_ASN_RRC_primaryPath_56,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"primaryPath"
		},
	{ ATF_POINTER, 2, offsetof(struct ASN_RRC_PDCP_Config__moreThanOneRLC, ul_DataSplitThreshold),
		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_ASN_RRC_UL_DataSplitThreshold,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"ul-DataSplitThreshold"
		},
	{ ATF_POINTER, 1, offsetof(struct ASN_RRC_PDCP_Config__moreThanOneRLC, pdcp_Duplication),
		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_BOOLEAN,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"pdcp-Duplication"
		},
};
static const int asn_MAP_ASN_RRC_moreThanOneRLC_oms_55[] = { 1, 2 };
static const ber_tlv_tag_t asn_DEF_ASN_RRC_moreThanOneRLC_tags_55[] = {
	(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_ASN_RRC_moreThanOneRLC_tag2el_55[] = {
    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* primaryPath */
    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* ul-DataSplitThreshold */
    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 } /* pdcp-Duplication */
};
static asn_SEQUENCE_specifics_t asn_SPC_ASN_RRC_moreThanOneRLC_specs_55 = {
	sizeof(struct ASN_RRC_PDCP_Config__moreThanOneRLC),
	offsetof(struct ASN_RRC_PDCP_Config__moreThanOneRLC, _asn_ctx),
	asn_MAP_ASN_RRC_moreThanOneRLC_tag2el_55,
	3,	/* Count of tags in the map */
	asn_MAP_ASN_RRC_moreThanOneRLC_oms_55,	/* Optional members */
	2, 0,	/* Root/Additions */
	-1,	/* First extension addition */
};
static /* Use -fall-defs-global to expose */
asn_TYPE_descriptor_t asn_DEF_ASN_RRC_moreThanOneRLC_55 = {
	"moreThanOneRLC",
	"moreThanOneRLC",
	&asn_OP_SEQUENCE,
	asn_DEF_ASN_RRC_moreThanOneRLC_tags_55,
	sizeof(asn_DEF_ASN_RRC_moreThanOneRLC_tags_55)
		/sizeof(asn_DEF_ASN_RRC_moreThanOneRLC_tags_55[0]) - 1, /* 1 */
	asn_DEF_ASN_RRC_moreThanOneRLC_tags_55,	/* Same as above */
	sizeof(asn_DEF_ASN_RRC_moreThanOneRLC_tags_55)
		/sizeof(asn_DEF_ASN_RRC_moreThanOneRLC_tags_55[0]), /* 2 */
	{ 0, 0, SEQUENCE_constraint },
	asn_MBR_ASN_RRC_moreThanOneRLC_55,
	3,	/* Elements count */
	&asn_SPC_ASN_RRC_moreThanOneRLC_specs_55	/* Additional specs */
};

static const asn_INTEGER_enum_map_t asn_MAP_ASN_RRC_t_Reordering_value2enum_61[] = {
	{ 0,	3,	"ms0" },
	{ 1,	3,	"ms1" },
	{ 2,	3,	"ms2" },
	{ 3,	3,	"ms4" },
	{ 4,	3,	"ms5" },
	{ 5,	3,	"ms8" },
	{ 6,	4,	"ms10" },
	{ 7,	4,	"ms15" },
	{ 8,	4,	"ms20" },
	{ 9,	4,	"ms30" },
	{ 10,	4,	"ms40" },
	{ 11,	4,	"ms50" },
	{ 12,	4,	"ms60" },
	{ 13,	4,	"ms80" },
	{ 14,	5,	"ms100" },
	{ 15,	5,	"ms120" },
	{ 16,	5,	"ms140" },
	{ 17,	5,	"ms160" },
	{ 18,	5,	"ms180" },
	{ 19,	5,	"ms200" },
	{ 20,	5,	"ms220" },
	{ 21,	5,	"ms240" },
	{ 22,	5,	"ms260" },
	{ 23,	5,	"ms280" },
	{ 24,	5,	"ms300" },
	{ 25,	5,	"ms500" },
	{ 26,	5,	"ms750" },
	{ 27,	6,	"ms1000" },
	{ 28,	6,	"ms1250" },
	{ 29,	6,	"ms1500" },
	{ 30,	6,	"ms1750" },
	{ 31,	6,	"ms2000" },
	{ 32,	6,	"ms2250" },
	{ 33,	6,	"ms2500" },
	{ 34,	6,	"ms2750" },
	{ 35,	6,	"ms3000" },
	{ 36,	7,	"spare28" },
	{ 37,	7,	"spare27" },
	{ 38,	7,	"spare26" },
	{ 39,	7,	"spare25" },
	{ 40,	7,	"spare24" },
	{ 41,	7,	"spare23" },
	{ 42,	7,	"spare22" },
	{ 43,	7,	"spare21" },
	{ 44,	7,	"spare20" },
	{ 45,	7,	"spare19" },
	{ 46,	7,	"spare18" },
	{ 47,	7,	"spare17" },
	{ 48,	7,	"spare16" },
	{ 49,	7,	"spare15" },
	{ 50,	7,	"spare14" },
	{ 51,	7,	"spare13" },
	{ 52,	7,	"spare12" },
	{ 53,	7,	"spare11" },
	{ 54,	7,	"spare10" },
	{ 55,	7,	"spare09" },
	{ 56,	7,	"spare08" },
	{ 57,	7,	"spare07" },
	{ 58,	7,	"spare06" },
	{ 59,	7,	"spare05" },
	{ 60,	7,	"spare04" },
	{ 61,	7,	"spare03" },
	{ 62,	7,	"spare02" },
	{ 63,	7,	"spare01" }
};
static const unsigned int asn_MAP_ASN_RRC_t_Reordering_enum2value_61[] = {
	0,	/* ms0(0) */
	1,	/* ms1(1) */
	6,	/* ms10(6) */
	14,	/* ms100(14) */
	27,	/* ms1000(27) */
	15,	/* ms120(15) */
	28,	/* ms1250(28) */
	16,	/* ms140(16) */
	7,	/* ms15(7) */
	29,	/* ms1500(29) */
	17,	/* ms160(17) */
	30,	/* ms1750(30) */
	18,	/* ms180(18) */
	2,	/* ms2(2) */
	8,	/* ms20(8) */
	19,	/* ms200(19) */
	31,	/* ms2000(31) */
	20,	/* ms220(20) */
	32,	/* ms2250(32) */
	21,	/* ms240(21) */
	33,	/* ms2500(33) */
	22,	/* ms260(22) */
	34,	/* ms2750(34) */
	23,	/* ms280(23) */
	9,	/* ms30(9) */
	24,	/* ms300(24) */
	35,	/* ms3000(35) */
	3,	/* ms4(3) */
	10,	/* ms40(10) */
	4,	/* ms5(4) */
	11,	/* ms50(11) */
	25,	/* ms500(25) */
	12,	/* ms60(12) */
	26,	/* ms750(26) */
	5,	/* ms8(5) */
	13,	/* ms80(13) */
	63,	/* spare01(63) */
	62,	/* spare02(62) */
	61,	/* spare03(61) */
	60,	/* spare04(60) */
	59,	/* spare05(59) */
	58,	/* spare06(58) */
	57,	/* spare07(57) */
	56,	/* spare08(56) */
	55,	/* spare09(55) */
	54,	/* spare10(54) */
	53,	/* spare11(53) */
	52,	/* spare12(52) */
	51,	/* spare13(51) */
	50,	/* spare14(50) */
	49,	/* spare15(49) */
	48,	/* spare16(48) */
	47,	/* spare17(47) */
	46,	/* spare18(46) */
	45,	/* spare19(45) */
	44,	/* spare20(44) */
	43,	/* spare21(43) */
	42,	/* spare22(42) */
	41,	/* spare23(41) */
	40,	/* spare24(40) */
	39,	/* spare25(39) */
	38,	/* spare26(38) */
	37,	/* spare27(37) */
	36	/* spare28(36) */
};
static const asn_INTEGER_specifics_t asn_SPC_ASN_RRC_t_Reordering_specs_61 = {
	asn_MAP_ASN_RRC_t_Reordering_value2enum_61,	/* "tag" => N; sorted by tag */
	asn_MAP_ASN_RRC_t_Reordering_enum2value_61,	/* N => "tag"; sorted by N */
	64,	/* Number of elements in the maps */
	0,	/* Enumeration is not extensible */
	1,	/* Strict enumeration */
	0,	/* Native long size */
	0
};
static const ber_tlv_tag_t asn_DEF_ASN_RRC_t_Reordering_tags_61[] = {
	(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
	(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
};
static /* Use -fall-defs-global to expose */
asn_TYPE_descriptor_t asn_DEF_ASN_RRC_t_Reordering_61 = {
	"t-Reordering",
	"t-Reordering",
	&asn_OP_NativeEnumerated,
	asn_DEF_ASN_RRC_t_Reordering_tags_61,
	sizeof(asn_DEF_ASN_RRC_t_Reordering_tags_61)
		/sizeof(asn_DEF_ASN_RRC_t_Reordering_tags_61[0]) - 1, /* 1 */
	asn_DEF_ASN_RRC_t_Reordering_tags_61,	/* Same as above */
	sizeof(asn_DEF_ASN_RRC_t_Reordering_tags_61)
		/sizeof(asn_DEF_ASN_RRC_t_Reordering_tags_61[0]), /* 2 */
	{ 0, &asn_PER_type_ASN_RRC_t_Reordering_constr_61, NativeEnumerated_constraint },
	0, 0,	/* Defined elsewhere */
	&asn_SPC_ASN_RRC_t_Reordering_specs_61	/* Additional specs */
};

static const asn_INTEGER_enum_map_t asn_MAP_ASN_RRC_cipheringDisabled_value2enum_128[] = {
	{ 0,	4,	"true" }
};
static const unsigned int asn_MAP_ASN_RRC_cipheringDisabled_enum2value_128[] = {
	0	/* true(0) */
};
static const asn_INTEGER_specifics_t asn_SPC_ASN_RRC_cipheringDisabled_specs_128 = {
	asn_MAP_ASN_RRC_cipheringDisabled_value2enum_128,	/* "tag" => N; sorted by tag */
	asn_MAP_ASN_RRC_cipheringDisabled_enum2value_128,	/* N => "tag"; sorted by N */
	1,	/* Number of elements in the maps */
	0,	/* Enumeration is not extensible */
	1,	/* Strict enumeration */
	0,	/* Native long size */
	0
};
static const ber_tlv_tag_t asn_DEF_ASN_RRC_cipheringDisabled_tags_128[] = {
	(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
	(ASN_TAG_CLASS_UNIVERSAL | (10 << 2))
};
static /* Use -fall-defs-global to expose */
asn_TYPE_descriptor_t asn_DEF_ASN_RRC_cipheringDisabled_128 = {
	"cipheringDisabled",
	"cipheringDisabled",
	&asn_OP_NativeEnumerated,
	asn_DEF_ASN_RRC_cipheringDisabled_tags_128,
	sizeof(asn_DEF_ASN_RRC_cipheringDisabled_tags_128)
		/sizeof(asn_DEF_ASN_RRC_cipheringDisabled_tags_128[0]) - 1, /* 1 */
	asn_DEF_ASN_RRC_cipheringDisabled_tags_128,	/* Same as above */
	sizeof(asn_DEF_ASN_RRC_cipheringDisabled_tags_128)
		/sizeof(asn_DEF_ASN_RRC_cipheringDisabled_tags_128[0]), /* 2 */
	{ 0, &asn_PER_type_ASN_RRC_cipheringDisabled_constr_128, NativeEnumerated_constraint },
	0, 0,	/* Defined elsewhere */
	&asn_SPC_ASN_RRC_cipheringDisabled_specs_128	/* Additional specs */
};

static asn_TYPE_member_t asn_MBR_ASN_RRC_ext1_127[] = {
	{ ATF_POINTER, 1, offsetof(struct ASN_RRC_PDCP_Config__ext1, cipheringDisabled),
		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_ASN_RRC_cipheringDisabled_128,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"cipheringDisabled"
		},
};
static const int asn_MAP_ASN_RRC_ext1_oms_127[] = { 0 };
static const ber_tlv_tag_t asn_DEF_ASN_RRC_ext1_tags_127[] = {
	(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_ASN_RRC_ext1_tag2el_127[] = {
    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 } /* cipheringDisabled */
};
static asn_SEQUENCE_specifics_t asn_SPC_ASN_RRC_ext1_specs_127 = {
	sizeof(struct ASN_RRC_PDCP_Config__ext1),
	offsetof(struct ASN_RRC_PDCP_Config__ext1, _asn_ctx),
	asn_MAP_ASN_RRC_ext1_tag2el_127,
	1,	/* Count of tags in the map */
	asn_MAP_ASN_RRC_ext1_oms_127,	/* Optional members */
	1, 0,	/* Root/Additions */
	-1,	/* First extension addition */
};
static /* Use -fall-defs-global to expose */
asn_TYPE_descriptor_t asn_DEF_ASN_RRC_ext1_127 = {
	"ext1",
	"ext1",
	&asn_OP_SEQUENCE,
	asn_DEF_ASN_RRC_ext1_tags_127,
	sizeof(asn_DEF_ASN_RRC_ext1_tags_127)
		/sizeof(asn_DEF_ASN_RRC_ext1_tags_127[0]) - 1, /* 1 */
	asn_DEF_ASN_RRC_ext1_tags_127,	/* Same as above */
	sizeof(asn_DEF_ASN_RRC_ext1_tags_127)
		/sizeof(asn_DEF_ASN_RRC_ext1_tags_127[0]), /* 2 */
	{ 0, 0, SEQUENCE_constraint },
	asn_MBR_ASN_RRC_ext1_127,
	1,	/* Elements count */
	&asn_SPC_ASN_RRC_ext1_specs_127	/* Additional specs */
};

asn_TYPE_member_t asn_MBR_ASN_RRC_PDCP_Config_1[] = {
	{ ATF_POINTER, 4, offsetof(struct ASN_RRC_PDCP_Config, drb),
		(ASN_TAG_CLASS_CONTEXT | (0 << 2)),
		0,
		&asn_DEF_ASN_RRC_drb_2,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"drb"
		},
	{ ATF_POINTER, 3, offsetof(struct ASN_RRC_PDCP_Config, moreThanOneRLC),
		(ASN_TAG_CLASS_CONTEXT | (1 << 2)),
		0,
		&asn_DEF_ASN_RRC_moreThanOneRLC_55,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"moreThanOneRLC"
		},
	{ ATF_POINTER, 2, offsetof(struct ASN_RRC_PDCP_Config, t_Reordering),
		(ASN_TAG_CLASS_CONTEXT | (2 << 2)),
		-1,	/* IMPLICIT tag at current level */
		&asn_DEF_ASN_RRC_t_Reordering_61,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"t-Reordering"
		},
	{ ATF_POINTER, 1, offsetof(struct ASN_RRC_PDCP_Config, ext1),
		(ASN_TAG_CLASS_CONTEXT | (3 << 2)),
		0,
		&asn_DEF_ASN_RRC_ext1_127,
		0,
		{ 0, 0, 0 },
		0, 0, /* No default value */
		"ext1"
		},
};
static const int asn_MAP_ASN_RRC_PDCP_Config_oms_1[] = { 0, 1, 2, 3 };
static const ber_tlv_tag_t asn_DEF_ASN_RRC_PDCP_Config_tags_1[] = {
	(ASN_TAG_CLASS_UNIVERSAL | (16 << 2))
};
static const asn_TYPE_tag2member_t asn_MAP_ASN_RRC_PDCP_Config_tag2el_1[] = {
    { (ASN_TAG_CLASS_CONTEXT | (0 << 2)), 0, 0, 0 }, /* drb */
    { (ASN_TAG_CLASS_CONTEXT | (1 << 2)), 1, 0, 0 }, /* moreThanOneRLC */
    { (ASN_TAG_CLASS_CONTEXT | (2 << 2)), 2, 0, 0 }, /* t-Reordering */
    { (ASN_TAG_CLASS_CONTEXT | (3 << 2)), 3, 0, 0 } /* ext1 */
};
asn_SEQUENCE_specifics_t asn_SPC_ASN_RRC_PDCP_Config_specs_1 = {
	sizeof(struct ASN_RRC_PDCP_Config),
	offsetof(struct ASN_RRC_PDCP_Config, _asn_ctx),
	asn_MAP_ASN_RRC_PDCP_Config_tag2el_1,
	4,	/* Count of tags in the map */
	asn_MAP_ASN_RRC_PDCP_Config_oms_1,	/* Optional members */
	3, 1,	/* Root/Additions */
	3,	/* First extension addition */
};
asn_TYPE_descriptor_t asn_DEF_ASN_RRC_PDCP_Config = {
	"PDCP-Config",
	"PDCP-Config",
	&asn_OP_SEQUENCE,
	asn_DEF_ASN_RRC_PDCP_Config_tags_1,
	sizeof(asn_DEF_ASN_RRC_PDCP_Config_tags_1)
		/sizeof(asn_DEF_ASN_RRC_PDCP_Config_tags_1[0]), /* 1 */
	asn_DEF_ASN_RRC_PDCP_Config_tags_1,	/* Same as above */
	sizeof(asn_DEF_ASN_RRC_PDCP_Config_tags_1)
		/sizeof(asn_DEF_ASN_RRC_PDCP_Config_tags_1[0]), /* 1 */
	{ 0, 0, SEQUENCE_constraint },
	asn_MBR_ASN_RRC_PDCP_Config_1,
	4,	/* Elements count */
	&asn_SPC_ASN_RRC_PDCP_Config_specs_1	/* Additional specs */
};

