####################################
## SCFD file version: 0.12        ##
## PDDB version: TL15A_1501_002   ##
####################################

#General checking for rule file execution
check_version minor TL16

#v0.4:
#check_param minor 

#v0.3, migration for CAREL::lnBtsId removed.

############################################################
# value of rtoMin shall be smaller than the value of rtoMax.
############################################################
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/SCTP rtoMax = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/SCTP-${SCTP} rtoMax <= PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/SCTP-${SCTP} rtoMin ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/SCTP-${SCTP} rtoMin + CONST 1 :
check_param_value minor SCTP rtoMax 10 60000


#v0.2
##########################################################
# PR 89738ESPE03 [TL00 FSIH]: maxNumCaConfUe3c definition in PDDB and CCPM is not consistent 
##########################################################

check_param_value minor LNCEL maxNumCaConfUe3c 0 20


#v0.6:Migration for PR 125816ESPE04: [Pre-screening][TL15A][LTE1905-A-a] When moProfileSelect=plmn, after migration,(mcc,mnc, mnc_length) in moPrMappingList are empty.  
#v0.4:migration removed for LTE1905. Workaround to pronto 127689ESPE04 
#######################################################################################################################################################################################
#LTE1905-A PLMN ID and SPID selected mobility profiles - Feature activation
############################################################################

#1) Add new and temporary parameters

add_list_param minor LNCEL moPrMappingList * mnc false
add_list_param minor LNCEL moPrMappingList * mcc false
add_list_param minor LNCEL moPrMappingList * mncLength false

add_param minor LNCEL tempMnc false
add_param minor LNCEL tempMcc false
add_param minor LNCEL tempMncLength false

add_param minor LNCEL temp1VSpid 0
add_param minor LNCEL temp2VSpid 0
add_param minor LNCEL temp3VSpid 0
add_param minor LNCEL temp4VSpid 0
add_param minor LNCEL tempVSPID 0
add_param minor LNCEL tempVSPID0 0
add_param minor LNCEL tempVSPID1 0
add_param minor LNCEL tempVSPID2 0
add_param minor LNCEL tempVSPID3 0
add_param minor LNCEL tempVSPID4 0

add_list_param minor LNCEL furtherPlmnIdL * temp1VSpid 0
add_list_param minor LNCEL furtherPlmnIdL * temp2VSpid 0
add_list_param minor LNCEL furtherPlmnIdL * temp3VSpid 0
add_list_param minor LNCEL furtherPlmnIdL * temp4VSpid 0
add_list_param minor LNCEL furtherPlmnIdL * tempVSPID 0

add_list_param minor LNCEL furtherPlmnIdL 0 tempMnc false
add_list_param minor LNCEL furtherPlmnIdL 1 tempMnc false
add_list_param minor LNCEL furtherPlmnIdL 2 tempMnc false
add_list_param minor LNCEL furtherPlmnIdL 3 tempMnc false
add_list_param minor LNCEL furtherPlmnIdL 4 tempMnc false
add_list_param minor LNCEL furtherPlmnIdL 5 tempMnc false

add_list_param minor LNCEL furtherPlmnIdL 0 tempMcc false
add_list_param minor LNCEL furtherPlmnIdL 1 tempMcc false
add_list_param minor LNCEL furtherPlmnIdL 2 tempMcc false
add_list_param minor LNCEL furtherPlmnIdL 3 tempMcc false
add_list_param minor LNCEL furtherPlmnIdL 4 tempMcc false
add_list_param minor LNCEL furtherPlmnIdL 5 tempMcc false

add_list_param minor LNCEL furtherPlmnIdL 0 tempMncLength false
add_list_param minor LNCEL furtherPlmnIdL 1 tempMncLength false
add_list_param minor LNCEL furtherPlmnIdL 2 tempMncLength false
add_list_param minor LNCEL furtherPlmnIdL 3 tempMncLength false
add_list_param minor LNCEL furtherPlmnIdL 4 tempMncLength false
add_list_param minor LNCEL furtherPlmnIdL 5 tempMncLength false


#################################################
#v0.9: correction for parameter deletion if not plmn:

add_param minor LNCEL tempMoProfileSelect false
copy_param_relative minor MRBTS/LNBTS MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-* moProfileSelect tempMoProfileSelect

dependence_del_target_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList * mnc ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mnc == CONST "false" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempMoProfileSelect != CONST "plmn"
dependence_del_target_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList * mcc ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mcc == CONST "false" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempMoProfileSelect != CONST "plmn"
dependence_del_target_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList * mncLength ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mncLength == CONST "false" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempMoProfileSelect != CONST "plmn"

del_param minor LNCEL tempMoProfileSelect
#end of v0.9
#################################################

#2) Find mnc for each LNCEL
#Since the combination of the parameters mcc, mnc and mncLength must be unique in all elements of moPrMappingList within one LNCEL, 
#ignore any subsequent duplicate vSPIDs found, i.e. only use the first found vSPID value for the following step:

#################################################

#1) Take the primary PLMN ie LNBTS::mnc for calculation.

# save value of LNBTS.mnc --> LNCEL.tempMnc
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL tempMnc = CONST true == CONST true ? PARAM MRBTS-${MRBTS}/LNBTS-* mnc :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL tempMcc = CONST true == CONST true ? PARAM MRBTS-${MRBTS}/LNBTS-* mcc :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL tempMncLength = CONST true == CONST true ? PARAM MRBTS-${MRBTS}/LNBTS-* mncLength :

#calculate vspid:
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp1VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempMnc + CONST 255 :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp2VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp1VSpid / CONST 256 :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp3VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp2VSpid * CONST 256 :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp4VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp1VSpid - PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp3VSpid :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL tempVSPID = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp4VSpid + CONST 1 :

#Fill all spidLast == spid
add_list_param minor LNCEL moPrMappingList * spidLast NotFilled
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList * spidLast = LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spidLast == CONST "NotFilled" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spid :

#Update if match found: mnc 
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList FIRST mnc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID >= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spid  && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID <= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spidLast && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} moProfileSelect == CONST "plmn" && LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mnc == CONST "false" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}  tempMnc : 

#Update if match found: mcc
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList FIRST mcc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID >= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spid  && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID <= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spidLast && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} moProfileSelect == CONST "plmn" && LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mcc == CONST "false" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}  tempMcc : 

#Update if match found: mncLength
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList FIRST mncLength = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID >= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spid  && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID <= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spidLast && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} moProfileSelect == CONST "plmn" && LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mncLength == CONST "false" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}  tempMncLength : 

#2) Then take secondary PLMN ie next unique mnc from LNCEL-furtherPlmnIdL structure. Items 1 - 6

#clarify duplicates
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 0 tempMnc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} mnc != LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 0 mnc ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 0 mnc :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 0 tempMcc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} mnc != LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 0 mnc ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 0 mcc :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 0 tempMncLength = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} mnc != LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 0 mnc ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 0 mncLength :

dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 1 tempMnc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} mnc != LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 1 mnc ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 1 mnc :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 1 tempMcc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} mnc != LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 1 mnc ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 1 mcc :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 1 tempMncLength = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} mnc != LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 1 mnc ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 1 mncLength :

dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 2 tempMnc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} mnc != LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 2 mnc ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 2 mnc :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 2 tempMcc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} mnc != LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 2 mnc ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 2 mcc :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 2 tempMncLength = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} mnc != LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 2 mnc ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 2 mncLength :

dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 3 tempMnc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} mnc != LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 3 mnc ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 3 mnc :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 3 tempMcc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} mnc != LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 3 mnc ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 3 mcc :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 3 tempMncLength = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} mnc != LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 3 mnc ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 3 mncLength :

dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 4 tempMnc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} mnc != LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 4 mnc ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 4 mnc :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 4 tempMcc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} mnc != LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 4 mnc ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 4 mcc :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 4 tempMncLength = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} mnc != LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 4 mnc ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 4 mncLength :

dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 5 tempMnc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} mnc != LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 5 mnc ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 5 mnc :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 5 tempMcc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} mnc != LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 5 mnc ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 5 mcc :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 5 tempMncLength = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} mnc != LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 5 mnc ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 5 mncLength :

# 2.0) Items from furtherPlmnIdL

#calculate vspid:
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 0 temp1VSpid = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 0 mnc + CONST 255 :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 0 temp2VSpid = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 0 temp1VSpid / CONST 256 :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 0 temp3VSpid = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 0 temp2VSpid * CONST 256 :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 0 temp4VSpid = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 0 temp1VSpid - LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 0 temp3VSpid :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 0 tempVSPID = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 0 temp4VSpid + CONST 1 :

dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 1 temp1VSpid = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 1 mnc + CONST 255 :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 1 temp2VSpid = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 1 temp1VSpid / CONST 256 :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 1 temp3VSpid = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 1 temp2VSpid * CONST 256 :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 1 temp4VSpid = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 1 temp1VSpid - LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 1 temp3VSpid :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 1 tempVSPID = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 1 temp4VSpid + CONST 1 :

dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 2 temp1VSpid = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 2 mnc + CONST 255 :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 2 temp2VSpid = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 2 temp1VSpid / CONST 256 :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 2 temp3VSpid = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 2 temp2VSpid * CONST 256 :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 2 temp4VSpid = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 2 temp1VSpid - LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 2 temp3VSpid :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 2 tempVSPID = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 2 temp4VSpid + CONST 1 :

dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 3 temp1VSpid = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 3 mnc + CONST 255 :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 3 temp2VSpid = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 3 temp1VSpid / CONST 256 :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 3 temp3VSpid = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 3 temp2VSpid * CONST 256 :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 3 temp4VSpid = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 3 temp1VSpid - LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 3 temp3VSpid :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 3 tempVSPID = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 3 temp4VSpid + CONST 1 :

dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 4 temp1VSpid = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 4 mnc + CONST 255 :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 4 temp2VSpid = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 4 temp1VSpid / CONST 256 :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 4 temp3VSpid = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 4 temp2VSpid * CONST 256 :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 4 temp4VSpid = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 4 temp1VSpid - LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 4 temp3VSpid :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL furtherPlmnIdL 4 tempVSPID = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} furtherPlmnIdL 4 temp4VSpid + CONST 1 :

#adjusting done on LNCEL level
move_list_param_to_param minor MRBTS/LNBTS/LNCEL MRBTS/LNBTS/LNCEL furtherPlmnIdL 0 tempMnc temp0Mnc
move_list_param_to_param minor MRBTS/LNBTS/LNCEL MRBTS/LNBTS/LNCEL furtherPlmnIdL 0 tempMcc temp0Mcc
move_list_param_to_param minor MRBTS/LNBTS/LNCEL MRBTS/LNBTS/LNCEL furtherPlmnIdL 0 tempMncLength temp0MncLength
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp1VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp0Mnc + CONST 255 :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp2VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp1VSpid / CONST 256 :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp3VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp2VSpid * CONST 256 :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp4VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp1VSpid - PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp3VSpid :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL tempVSPID0 = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp4VSpid + CONST 1 :

move_list_param_to_param minor MRBTS/LNBTS/LNCEL MRBTS/LNBTS/LNCEL furtherPlmnIdL 1 tempMnc temp1Mnc
move_list_param_to_param minor MRBTS/LNBTS/LNCEL MRBTS/LNBTS/LNCEL furtherPlmnIdL 1 tempMcc temp1Mcc
move_list_param_to_param minor MRBTS/LNBTS/LNCEL MRBTS/LNBTS/LNCEL furtherPlmnIdL 1 tempMncLength temp1MncLength
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp1VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp1Mnc + CONST 255 :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp2VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp1VSpid / CONST 256 :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp3VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp2VSpid * CONST 256 :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp4VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp1VSpid - PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp3VSpid :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL tempVSPID1 = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp4VSpid + CONST 1 :

move_list_param_to_param minor MRBTS/LNBTS/LNCEL MRBTS/LNBTS/LNCEL furtherPlmnIdL 2 tempMnc temp2Mnc
move_list_param_to_param minor MRBTS/LNBTS/LNCEL MRBTS/LNBTS/LNCEL furtherPlmnIdL 2 tempMcc temp2Mcc
move_list_param_to_param minor MRBTS/LNBTS/LNCEL MRBTS/LNBTS/LNCEL furtherPlmnIdL 2 tempMncLength temp2MncLength
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp1VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp2Mnc + CONST 255 :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp2VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp1VSpid / CONST 256 :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp3VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp2VSpid * CONST 256 :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp4VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp1VSpid - PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp3VSpid :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL tempVSPID2 = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp4VSpid + CONST 1 :

move_list_param_to_param minor MRBTS/LNBTS/LNCEL MRBTS/LNBTS/LNCEL furtherPlmnIdL 3 tempMnc temp3Mnc
move_list_param_to_param minor MRBTS/LNBTS/LNCEL MRBTS/LNBTS/LNCEL furtherPlmnIdL 3 tempMcc temp3Mcc
move_list_param_to_param minor MRBTS/LNBTS/LNCEL MRBTS/LNBTS/LNCEL furtherPlmnIdL 3 tempMncLength temp3MncLength
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp1VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp3Mnc + CONST 255 :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp2VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp1VSpid / CONST 256 :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp3VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp2VSpid * CONST 256 :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp4VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp1VSpid - PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp3VSpid :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL tempVSPID3 = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp4VSpid + CONST 1 :

move_list_param_to_param minor MRBTS/LNBTS/LNCEL MRBTS/LNBTS/LNCEL furtherPlmnIdL 4 tempMnc temp4Mnc
move_list_param_to_param minor MRBTS/LNBTS/LNCEL MRBTS/LNBTS/LNCEL furtherPlmnIdL 4 tempMcc temp4Mcc
move_list_param_to_param minor MRBTS/LNBTS/LNCEL MRBTS/LNBTS/LNCEL furtherPlmnIdL 4 tempMncLength temp4MncLength
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp1VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp4Mnc + CONST 255 :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp2VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp1VSpid / CONST 256 :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp3VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp2VSpid * CONST 256 :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL temp4VSpid = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp1VSpid - PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp3VSpid :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL tempVSPID4 = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp4VSpid + CONST 1 :

# v0.11 correctoions for PR063013
#Update if match found: mnc 
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList FIRST mnc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID0 >= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spid && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID0 <= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spidLast && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} moProfileSelect == CONST "plmn" && LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mnc == CONST "false" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp0Mnc : 
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList FIRST mnc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID1 >= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spid && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID1 <= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spidLast && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} moProfileSelect == CONST "plmn" && LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mnc == CONST "false" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp1Mnc : 
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList FIRST mnc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID2 >= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spid && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID2 <= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spidLast && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} moProfileSelect == CONST "plmn" && LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mnc == CONST "false" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp2Mnc : 
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList FIRST mnc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID3 >= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spid && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID3 <= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spidLast && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} moProfileSelect == CONST "plmn" && LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mnc == CONST "false" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp3Mnc : 
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList FIRST mnc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID4 >= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spid && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID4 <= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spidLast && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} moProfileSelect == CONST "plmn" && LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mnc == CONST "false" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp4Mnc : 

#Update if match found: mcc
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList FIRST mcc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID0 >= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spid && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID0 <= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spidLast && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} moProfileSelect == CONST "plmn" && LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mcc == CONST "false" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp0Mcc : 
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList FIRST mcc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID1 >= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spid && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID1 <= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spidLast && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} moProfileSelect == CONST "plmn" && LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mcc == CONST "false" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp1Mcc : 
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList FIRST mcc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID2 >= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spid && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID2 <= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spidLast && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} moProfileSelect == CONST "plmn" && LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mcc == CONST "false" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp2Mcc : 
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList FIRST mcc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID3 >= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spid && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID3 <= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spidLast && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} moProfileSelect == CONST "plmn" && LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mcc == CONST "false" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp3Mcc :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList FIRST mcc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID4 >= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spid && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID4 <= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spidLast && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} moProfileSelect == CONST "plmn" && LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mcc == CONST "false" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp4Mcc : 

#Update if match found: mncLength
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList FIRST mncLength = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID0 >= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spid && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID0 <= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spidLast && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} moProfileSelect == CONST "plmn" && LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mncLength == CONST "false" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp0MncLength : 
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList FIRST mncLength = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID1 >= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spid && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID1 <= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spidLast && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} moProfileSelect == CONST "plmn" && LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mncLength == CONST "false" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp1MncLength : 
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList FIRST mncLength = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID2 >= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spid && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID2 <= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spidLast && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} moProfileSelect == CONST "plmn" && LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mncLength == CONST "false" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp2MncLength : 
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList FIRST mncLength = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID3 >= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spid && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID3 <= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spidLast && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} moProfileSelect == CONST "plmn" && LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mncLength == CONST "false" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp3MncLength : 
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList FIRST mncLength = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID4 >= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spid && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} tempVSPID4 <= LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spidLast && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} moProfileSelect == CONST "plmn" && LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mncLength == CONST "false" ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} temp4MncLength : 

# v0.11 correctoions for PR063013 END

#Delete added spidLast if spidLast==spid 
dependence_del_target_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList * spidLast ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spidLast ==  LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spid
#v0.8: delete also if value == notFilled
dependence_del_target_relative minor LISTPARAM MRBTS/LNBTS/LNCEL moPrMappingList * spidLast ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} spidLast == CONST "NotFilled"


#v0.7, correction for deletion:
#3) IF parameter value false, delete corresponding list item:

#v0.9:
dependence_del_target_relative minor LISTITEM MRBTS/LNBTS/LNCEL moPrMappingList * ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mcc == CONST "false"
#v0.10: correction for deletion:
dependence_del_target_relative minor LISTITEM MRBTS/LNBTS/LNCEL moPrMappingList * ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mnc == CONST "false"
dependence_del_target_relative minor LISTITEM MRBTS/LNBTS/LNCEL moPrMappingList * ? LISTPARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} moPrMappingList ${moPrMappingList} mncLength == CONST "false"
#v0.10: correction for deletion END

#4) Delete temporary parameters

del_param minor LNCEL tempMnc
del_param minor LNCEL tempMcc
del_param minor LNCEL tempMncLength
del_param minor LNCEL temp1VSpid
del_param minor LNCEL temp2VSpid
del_param minor LNCEL temp3VSpid
del_param minor LNCEL temp4VSpid
del_param minor LNCEL tempVSPID

del_param minor LNCEL tempVSPID0
del_param minor LNCEL tempVSPID1
del_param minor LNCEL tempVSPID2
del_param minor LNCEL tempVSPID3
del_param minor LNCEL tempVSPID4

del_param minor LNCEL temp0Mnc
del_param minor LNCEL temp0Mcc
del_param minor LNCEL temp0MncLength

del_param minor LNCEL temp1Mnc
del_param minor LNCEL temp2Mnc
del_param minor LNCEL temp3Mnc
del_param minor LNCEL temp4Mnc
del_param minor LNCEL temp5Mnc
del_param minor LNCEL temp1Mcc
del_param minor LNCEL temp2Mcc
del_param minor LNCEL temp3Mcc
del_param minor LNCEL temp4Mcc
del_param minor LNCEL temp5Mcc
del_param minor LNCEL temp1MncLength
del_param minor LNCEL temp2MncLength
del_param minor LNCEL temp3MncLength
del_param minor LNCEL temp4MncLength
del_param minor LNCEL temp5MncLength

del_list_param minor LNCEL furtherPlmnIdL temp1VSpid
del_list_param minor LNCEL furtherPlmnIdL temp2VSpid
del_list_param minor LNCEL furtherPlmnIdL temp3VSpid
del_list_param minor LNCEL furtherPlmnIdL temp4VSpid
del_list_param minor LNCEL furtherPlmnIdL tempVSPID

del_list_param minor LNCEL furtherPlmnIdL tempMnc
del_list_param minor LNCEL furtherPlmnIdL tempMcc
del_list_param minor LNCEL furtherPlmnIdL tempMncLength

#######################################################################################################################################################################################

#v0.12
###################################################################################################
# PR062217: [TL15A+FSMF][LBT2610]Regarding migration issue of antElementSpacing in TL15A--LBT2610
###################################################################################################
#1. Add temporary parameters
add_param minor LNCEL tempExistCheck donotexist
#2. Modify value if antBearingForAoaCalc exists (some tricky way resolved). Value is not changed if antBearingForAoaCalc do not exist
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL tempExistCheck = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} antBearingForAoaCalc != CONST "neverexistingvalue" ? CONST "exists" :
#3.Delete antElementSpacing if antBearingForAoaCalc does not exist
dependence_add_param minor LNCEL tempExistCheck "exists" antElementSpacing "75mm"
#4. Delete temporary parameters
del_param minor LNCEL tempExistCheck
#version
set_version major TL15A

#history:
add_log minor "Correction conversion for TL15A FB15.01_002"