####################################
## SCFD file version: 0.14         ##
## PDDB version: TLF17_1610_001   ##
####################################

#General checking for rule file execution
check_version minor TL17A
check_version minor TLF17A
check_version minor TLC17A

#v0.5 exit rule for 17SP
check_version minor TLF17SP
check_version minor TLC17SP
#v0.5 end


check_param minor LNCEL inactivityTimerQci5Sign


####################################################################################################################
# migration included in TLF17_1609_002
####################################################################################################################


###########
# COMMON: #
###########

#Macro specific
####################################################################################################################
#CRL13582 Descoping of features LTE2733/LTE2912 Baseband Pooling
####################################################################################################################


####################################################################################################################
# LBT3839 CRL12439 CRL11646 Operator configurable QCI5 signaling inactivity timer
####################################################################################################################
#OM_LTE_SFS_RNL_16901
#Migration of the new cell level parameter inactivityTimerQci5Sign
#Due to CRL12439 the former R&D parameter rdQci5SignInactivityTimer shall become operator configurable per cell. Therefore the following migration is necessary:
#The new, mandatory LNCEL parameter inactivityTimerQci5Sign must be initialized with its NIDD default value.
add_param minor LNCEL inactivityTimerQci5Sign 0


####################################################################################################################
# LTE3128-A-x LTE-M - Basic LTE-M functions - Late Object Model Parameters adjustment for LTE3128-A
####################################################################################################################
add_param minor PMRNL mtLTEM 15min


####################################################################################################################
# PR178683: LTE3199 PDDB: Wrong LNBTS-actMBMS consistency check / wrong M1SYNC-mbmsSyncPeriod internal value
####################################################################################################################
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/M1SYNC mbmsSyncPeriod = CONST 0 == CONST 0 ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/M1SYNC-${M1SYNC} mbmsSyncPeriod / CONST 10 :



########
# TDD: #
########

#FZM/FZC specific
####################################################################################################################
# LTE2947 TD-LTE 17 Small Cell Capacity and Dimensioning
# LTE2948 FDD/TD-LTE 17 Capacity and Performance for Flexi Zone Controller
####################################################################################################################
#check if 1 or 2 cell configuration
#LNCEL::lcrId --> LCELL::resourceList.antlDN --> APEQM
add_list minor APEQM cellList
add_param minor APEQM countCells 0

add_list_param minor LCELL resourceList 0 apeqmId value
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/BTSSCL/LCELL resourceList 0 apeqmId = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/BTSSCL-${BTSSCL}/LCELL-${LCELL} resourceList 0 antlDN : 
regex_replace minor LISTPARAM MRBTS-*/BTSSCL-*/LCELL-* resourceList 0 apeqmId REPLACE "/RMOD-[0-9]*/ANTL-[0-9]*" ALL ""
regex_replace minor LISTPARAM MRBTS-*/BTSSCL-*/LCELL-* resourceList 0 apeqmId REPLACE "MRBTS-[0-9]*/EQM-1/APEQM-" ALL ""

dependence_add_param_based_on_MOC_instance minor APEQM apeqmInstanceId + 0
dependence_add_param_based_on_MOC_instance minor LCELL lcellInstanceId + 0
dependence_add_param_based_on_MOC_instance minor LNCEL lncelInstanceId + 0

dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/BTSSCL/LCELL lcellInstanceId PARAM MRBTS/LNBTS/LNCEL lcrId PARAM lncelInstanceId
add_list minor LCELL cellList
add_list_item minor LCELL cellList
add_list_param minor LCELL cellList * lncelInstanceId value
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/BTSSCL/LCELL cellList 0 lncelInstanceId = CONST 1 == CONST 1 ? PARAM MRBTS-${MRBTS}/BTSSCL-${BTSSCL}/LCELL-${LCELL} lncelInstanceId : 

dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM apeqmInstanceId LISTPARAM MRBTS/BTSSCL/LCELL resourceList 0 apeqmId LISTPARAM cellList lncelInstanceId
add_list_param minor APEQM cellList * cell 1

dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM countCells = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM} cellList 0 cell : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM countCells = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM} cellList 1 cell + PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM} countCells : 

dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/LNBTS/LNCEL lncelInstanceId LISTPARAM MRBTS/EQM/APEQM cellList 0 lncelInstanceId PARAM countCells
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/LNBTS/LNCEL lncelInstanceId LISTPARAM MRBTS/EQM/APEQM cellList 1 lncelInstanceId PARAM countCells

del_list minor LCELL cellList
del_list minor APEQM cellList
del_param minor APEQM countCells
del_param minor LCELL lcellInstanceId
del_param minor LCELL lncelInstanceId
del_list_param minor LCELL resourceList apeqmId
del_param minor LNCEL lncelInstanceId
del_param minor APEQM apeqmInstanceId


#config == oneAP_10MHz oneAP_1520MHz_sa1 oneAP_1520MHz_sa2 moreAP_1015MHz moreAP_20MHz_sa1
add_param minor LNCEL_TDD config value
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD config = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} chBw == CONST "10 MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} countCells == CONST 1 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} tddFrameConf == CONST 1 ? CONST "oneAP_10MHz" : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD config = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} chBw == CONST "15 MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} countCells == CONST 1 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} tddFrameConf == CONST 1 ? CONST "oneAP_1520MHz_sa1" : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD config = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} chBw == CONST "20 MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} countCells == CONST 1 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} tddFrameConf == CONST 1 ? CONST "oneAP_1520MHz_sa1" : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD config = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} chBw == CONST "15 MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} countCells == CONST 1 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} tddFrameConf == CONST 2 ? CONST "oneAP_1520MHz_sa2" : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD config = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} chBw == CONST "20 MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} countCells == CONST 1 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} tddFrameConf == CONST 2 ? CONST "oneAP_1520MHz_sa2" : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD config = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} chBw == CONST "10 MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} countCells == CONST 2 ? CONST "moreAP_1015MHz" : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD config = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} chBw == CONST "15 MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} countCells == CONST 2 ? CONST "moreAP_1015MHz" : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD config = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} chBw == CONST "20 MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} countCells == CONST 2 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} tddFrameConf == CONST 1 ? CONST "moreAP_20MHz_sa1" : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD config = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} chBw == CONST "20 MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} countCells == CONST 2 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} tddFrameConf == CONST 2 ? CONST "moreAP_1015MHz" : 

del_param minor LNCEL countCells


#update parameters
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD addNumDrbRadioReasHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_10MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} addNumDrbRadioReasHo > CONST 1200 ? CONST 1200 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD addNumDrbRadioReasHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa1" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} addNumDrbRadioReasHo > CONST 1800 ? CONST 1800 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD addNumDrbRadioReasHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa2" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} addNumDrbRadioReasHo > CONST 1200 ? CONST 1200 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD addNumDrbRadioReasHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "moreAP_1015MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} addNumDrbRadioReasHo > CONST 1068 ? CONST 1068 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD addNumDrbRadioReasHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "moreAP_20MHz_sa1" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} addNumDrbRadioReasHo > CONST 1260 ? CONST 1260 : 

dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD addNumDrbTimeCriticalHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_10MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} addNumDrbTimeCriticalHo > CONST 1200 ? CONST 1200 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD addNumDrbTimeCriticalHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa1" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} addNumDrbTimeCriticalHo > CONST 1800 ? CONST 1800 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD addNumDrbTimeCriticalHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa2" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} addNumDrbTimeCriticalHo > CONST 1200 ? CONST 1200 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD addNumDrbTimeCriticalHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "moreAP_1015MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} addNumDrbTimeCriticalHo > CONST 1068 ? CONST 1068 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD addNumDrbTimeCriticalHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "moreAP_20MHz_sa1" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} addNumDrbTimeCriticalHo > CONST 1260 ? CONST 1260 : 

dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD addNumQci1DrbRadioReasHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_10MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} addNumQci1DrbRadioReasHo > CONST 300 ? CONST 300 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD addNumQci1DrbRadioReasHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa1" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} addNumQci1DrbRadioReasHo > CONST 400 ? CONST 400 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD addNumQci1DrbRadioReasHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa2" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} addNumQci1DrbRadioReasHo > CONST 200 ? CONST 200 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD addNumQci1DrbRadioReasHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} tddFrameConf == CONST 1 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} addNumQci1DrbRadioReasHo > CONST 200 ? CONST 200 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD addNumQci1DrbRadioReasHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} tddFrameConf == CONST 2 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} addNumQci1DrbRadioReasHo > CONST 100 ? CONST 100 : 

dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD addNumQci1DrbTimeCriticalHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_10MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} addNumQci1DrbTimeCriticalHo > CONST 300 ? CONST 300 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD addNumQci1DrbTimeCriticalHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa1" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} addNumQci1DrbTimeCriticalHo > CONST 400 ? CONST 400 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD addNumQci1DrbTimeCriticalHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa2" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} addNumQci1DrbTimeCriticalHo > CONST 200 ? CONST 200 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD addNumQci1DrbTimeCriticalHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} tddFrameConf == CONST 1 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} addNumQci1DrbTimeCriticalHo > CONST 200 ? CONST 200 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD addNumQci1DrbTimeCriticalHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} tddFrameConf == CONST 2 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} addNumQci1DrbTimeCriticalHo > CONST 100 ? CONST 100 : 

dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumActDrb = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_10MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumActDrb > CONST 1200 ? CONST 1200 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumActDrb = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa1" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumActDrb > CONST 1800 ? CONST 1800 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumActDrb = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa2" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumActDrb > CONST 1200 ? CONST 1200 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumActDrb = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "moreAP_1015MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumActDrb > CONST 1068 ? CONST 1068 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumActDrb = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "moreAP_20MHz_sa1" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumActDrb > CONST 1260 ? CONST 1260 : 

dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumActUE = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_10MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumActUE > CONST 400 ? CONST 400 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumActUE = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa1" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumActUE > CONST 600 ? CONST 600 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumActUE = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa2" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumActUE > CONST 400 ? CONST 400 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumActUE = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "moreAP_1015MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumActUE > CONST 356 ? CONST 356 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumActUE = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "moreAP_20MHz_sa1" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumActUE > CONST 420 ? CONST 420 : 

dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumQci1Drb = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_10MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumQci1Drb > CONST 300 ? CONST 300 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumQci1Drb = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa1" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumQci1Drb > CONST 400 ? CONST 400 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumQci1Drb = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa2" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumQci1Drb > CONST 200 ? CONST 200 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumQci1Drb = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} tddFrameConf == CONST 1 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumQci1Drb > CONST 200 ? CONST 200 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumQci1Drb = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} tddFrameConf == CONST 2 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumQci1Drb > CONST 100 ? CONST 100 : 

dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD addAUeRrHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_10MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} addAUeRrHo > CONST 400 ? CONST 400 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD addAUeRrHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa1" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} addAUeRrHo > CONST 600 ? CONST 600 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD addAUeRrHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa2" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} addAUeRrHo > CONST 400 ? CONST 400 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD addAUeRrHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "moreAP_1015MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} addAUeRrHo > CONST 356 ? CONST 356 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD addAUeRrHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "moreAP_20MHz_sa1" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} addAUeRrHo > CONST 420 ? CONST 420 : 

dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD addAUeTcHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_10MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} addAUeTcHo > CONST 400 ? CONST 400 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD addAUeTcHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa1" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} addAUeTcHo > CONST 600 ? CONST 600 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD addAUeTcHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa2" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} addAUeTcHo > CONST 400 ? CONST 400 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD addAUeTcHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "moreAP_1015MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} addAUeTcHo > CONST 356 ? CONST 356 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD addAUeTcHo = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "moreAP_20MHz_sa1" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} addAUeTcHo > CONST 420 ? CONST 420 : 

dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD addEmergencySessions = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_10MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} addEmergencySessions > CONST 400 ? CONST 400 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD addEmergencySessions = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa1" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} addEmergencySessions > CONST 600 ? CONST 600 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD addEmergencySessions = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa2" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} addEmergencySessions > CONST 400 ? CONST 400 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD addEmergencySessions = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "moreAP_1015MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} addEmergencySessions > CONST 356 ? CONST 356 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD addEmergencySessions = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "moreAP_20MHz_sa1" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} addEmergencySessions > CONST 420 ? CONST 420 : 

dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD maxNumRrc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_10MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} maxNumRrc > CONST 400 ? CONST 400 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD maxNumRrc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa1" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} maxNumRrc > CONST 600 ? CONST 600 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD maxNumRrc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa2" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} maxNumRrc > CONST 400 ? CONST 400 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD maxNumRrc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "moreAP_1015MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} maxNumRrc > CONST 356 ? CONST 356 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD maxNumRrc = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "moreAP_20MHz_sa1" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} maxNumRrc > CONST 420 ? CONST 420 : 

dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD maxNumRrcEmergency = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_10MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} maxNumRrcEmergency > CONST 400 ? CONST 400 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD maxNumRrcEmergency = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa1" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} maxNumRrcEmergency > CONST 600 ? CONST 600 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD maxNumRrcEmergency = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "oneAP_1520MHz_sa2" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} maxNumRrcEmergency > CONST 400 ? CONST 400 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD maxNumRrcEmergency = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "moreAP_1015MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} maxNumRrcEmergency > CONST 356 ? CONST 356 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD/MPUCCH_TDD maxNumRrcEmergency = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} config == CONST "moreAP_20MHz_sa1" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD}/MPUCCH_TDD-${MPUCCH_TDD} maxNumRrcEmergency > CONST 420 ? CONST 420 : 


del_param minor LNCEL_TDD config





####################################################################################################################
# LTE3296-C/D/F - Single OAM - included in TLF17_1609_002
####################################################################################################################

#1. LTE3296-C/F - MNL, SYNC
#1.1 new MNL MOCs

#v0.8 rename_cls logic different in BTSSM
#rename_cls minor TRBLCADM MNL-1/MNLENT-1/TRBLCADM
#rename_cls minor PMCADM MNL-1/MNLENT-1/PMCADM
#rename_cls minor SECADM MNL-1/MNLENT-1/SECADM

add_cls minor MNLENT/PMCADM_NEW-1
add_cls minor MNLENT/SECADM_NEW-1
add_cls minor MNLENT/TRBLCADM_NEW-1
set_operation minor PMCADM_NEW create
set_operation minor SECADM_NEW create
set_operation minor TRBLCADM_NEW create

copy_list_param minor PMCADM PMCADM_NEW rTPmCollEntity rTPmCollEntity
copy_param minor PMCADM PMCADM_NEW reportingIntervalPm reportingIntervalPm
copy_param minor PMCADM PMCADM_NEW sdlMaxUploadFileNumber sdlMaxUploadFileNumber
copy_param minor PMCADM PMCADM_NEW sdlNonce sdlNonce
copy_param minor PMCADM PMCADM_NEW sdlPrimaryDestIp sdlPrimaryDestIp

copy_param minor SECADM SECADM_NEW actServiceAccountSsh actServiceAccountSsh
copy_param minor SECADM SECADM_NEW actServicePortState actServicePortState
copy_param minor SECADM SECADM_NEW idleSessionTimeWebUI idleSessionTimeWebUI
copy_param minor SECADM SECADM_NEW passwdHistoryLength passwdHistoryLength
copy_param minor SECADM SECADM_NEW platLoginBannerText platLoginBannerText
copy_param minor SECADM SECADM_NEW serviceAccountSshStatus serviceAccountSshStatus
copy_param minor SECADM SECADM_NEW servicePortStatus servicePortStatus
copy_list_param minor SECADM SECADM_NEW serviceUserPublicKeys serviceUserPublicKeys
copy_param minor SECADM SECADM_NEW sshClientAliveTimer sshClientAliveTimer
copy_param minor SECADM SECADM_NEW sshSessionLoginDelayTimer sshSessionLoginDelayTimer

copy_param minor TRBLCADM TRBLCADM_NEW actCoreDumpFileCollection actCoreDumpFileCollection
copy_param minor TRBLCADM TRBLCADM_NEW actRemoteSyslogTransmission actRemoteSyslogTransmission
copy_list_param minor TRBLCADM TRBLCADM_NEW faultSnapshotTriggers faultSnapshotTriggers
copy_list_param minor TRBLCADM TRBLCADM_NEW remoteSyslogConfig remoteSyslogConfig
copy_param minor TRBLCADM TRBLCADM_NEW syslogSubstringTrigger syslogSubstringTrigger

del_cls minor PMCADM
del_cls minor SECADM
del_cls minor TRBLCADM
rename_cls minor PMCADM_NEW PMCADM
rename_cls minor SECADM_NEW SECADM
rename_cls minor TRBLCADM_NEW TRBLCADM
#v0.8 end


#v0.2 MRBTS::actEthernetSec --> SECADM::ethernetPortSecurityEnabled
#add_param minor SECADM ethernetPortSecurityEnabled true
rename_param minor MRBTS actEthernetSec ethernetPortSecurityEnabled
move_param minor MRBTS SECADM ethernetPortSecurityEnabled
#v0.2 end

del_cls minor RFRST
del_cls minor RFTHLD
del_cls minor TEST

add_cls minor MNL/CMD-1
set_operation minor CMD create

add_cls minor MNLENT/FEATCADM-1
set_operation minor FEATCADM create
move_param minor MRBTS FEATCADM actTransportConfigFallback
move_param minor MRBTS FEATCADM actRemoteRfDiag
move_param minor BTSSCL FEATCADM actLocationLock

add_cls minor MNLENT/FMCADM-1
set_operation minor FMCADM create
move_list minor BTSSCL FMCADM alToggSuppList


#1.2 MRBTS/MNL/MNLENT/FEATCADM/LLOCK-1 replaces BTSSCL::locationLockConf
dependence_add_obj minor FEATCADM actLocationLock true FEATCADM/LLOCK-1
set_operation minor LLOCK create
move_list_param_to_param minor MRBTS/BTSSCL MRBTS/MNL/MNLENT/FEATCADM/LLOCK locationLockConf 0 alarmingPeriod alarmingPeriod
move_list_param_to_param minor MRBTS/BTSSCL MRBTS/MNL/MNLENT/FEATCADM/LLOCK locationLockConf 0 automaticDisable automaticDisable
move_list_param_to_param minor MRBTS/BTSSCL MRBTS/MNL/MNLENT/FEATCADM/LLOCK locationLockConf 0 detectionMethods detectionMethods
move_list_param_to_param minor MRBTS/BTSSCL MRBTS/MNL/MNLENT/FEATCADM/LLOCK locationLockConf 0 gnssTriggerDistance gnssTriggerDistance


#1.3 MRBTS/MNL/MNLENT/SYNC, SYNC/CLOCK (added in LTE3296-B/E - completed list of parameters)
add_param minor SYNC btsSyncMode value
add_param minor SYNC manualFrameTimingAdjustment value
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/MNL/MNLENT/SYNC btsSyncMode = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/BTSSCL-1 btsSyncMode : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/MNL/MNLENT/SYNC manualFrameTimingAdjustment = CONST "true" == CONST "true" ? PARAM MRBTS-${MRBTS}/BTSSCL-1 ppsTimingOffset : 
dependence_del_target_relative minor PARAM MRBTS/LNBTS/FTM/SYNC btsSyncMode ? CONST "true" == CONST "true"
dependence_del_target_relative minor PARAM MRBTS/LNBTS/FTM/SYNC manualFrameTimingAdjustment ? CONST "true" == CONST "true"

rename_list minor SMOD coreModuleSyncInputList syncInputList
move_list minor SMOD CLOCK syncInputList


#1.4 MRBTS/MNL/MNLENT/SYNC/CLOCK/RIBS-1 optional - if SMOD/coreModuleSyncInputList use ribs (CLOCK/syncInputList/syncInputType == "radio interface based sync")
add_cls minor CLOCK/RIBS-1
set_operation minor RIBS create

move_param minor SMOD RIBS ribsEarfcn
move_param minor SMOD RIBS ribsSrcCellId


# remove RIBS if "radio interface based sync”  is NOT configured in syncInputList
add_param minor CLOCK usingRibs notUsing
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/MNL/MNLENT/SYNC/CLOCK usingRibs = LISTPARAM MRBTS-${MRBTS}/MNL-1/MNLENT-1/SYNC-1/CLOCK-1 syncInputList 0 syncInputType == CONST "radio interface based sync" ? CONST "using" : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/MNL/MNLENT/SYNC/CLOCK usingRibs = LISTPARAM MRBTS-${MRBTS}/MNL-1/MNLENT-1/SYNC-1/CLOCK-1 syncInputList 1 syncInputType == CONST "radio interface based sync" ? CONST "using" : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/MNL/MNLENT/SYNC/CLOCK usingRibs = LISTPARAM MRBTS-${MRBTS}/MNL-1/MNLENT-1/SYNC-1/CLOCK-1 syncInputList 2 syncInputType == CONST "radio interface based sync" ? CONST "using" : 

dependence_del_target_relative minor MOC MRBTS/MNL/MNLENT/SYNC/CLOCK/RIBS ? PARAM MRBTS-${MRBTS}/MNL-1/MNLENT-1/SYNC-1/CLOCK-1 usingRibs == CONST "notUsing"
del_param minor CLOCK usingRibs


#1.5 MRBTS/MNL/MNLENT/SYNC/TIME
add_cls minor MNLENT/SYNC/TIME-1
set_operation minor TIME create
move_param minor MRBTS TIME timeZone

add_list minor TIME utcGpsOffsetConfig
add_list_item minor TIME utcGpsOffsetConfig
move_param_to_list_param minor MRBTS/BTSSCL MRBTS/MNL/MNLENT/SYNC/TIME glonassLeapSecondDate utcGpsOffsetConfig 0 changeDate
move_param_to_list_param minor MRBTS/BTSSCL MRBTS/MNL/MNLENT/SYNC/TIME glonassOffsetAfter utcGpsOffsetConfig 0 offsetAfter
#v0.14 typo corrected ofssetBefore --> offsetBefore
move_param_to_list_param minor MRBTS/BTSSCL MRBTS/MNL/MNLENT/SYNC/TIME glonassOffsetBefore utcGpsOffsetConfig 0 offsetBefore
#v0.14 end

#delete empty list
add_param minor TIME checkUtcGpsOffsetConfig empty
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/MNL/MNLENT/SYNC/TIME checkUtcGpsOffsetConfig = LISTPARAM MRBTS-${MRBTS}/MNL-1/MNLENT-1/SYNC-1/TIME-1 utcGpsOffsetConfig 0 changeDate == LISTPARAM MRBTS-${MRBTS}/MNL-1/MNLENT-1/SYNC-1/TIME-1 utcGpsOffsetConfig 0 changeDate ? CONST "notEmpty" : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/MNL/MNLENT/SYNC/TIME checkUtcGpsOffsetConfig = LISTPARAM MRBTS-${MRBTS}/MNL-1/MNLENT-1/SYNC-1/TIME-1 utcGpsOffsetConfig 0 offsetAfter == LISTPARAM MRBTS-${MRBTS}/MNL-1/MNLENT-1/SYNC-1/TIME-1 utcGpsOffsetConfig 0 offsetAfter ? CONST "notEmpty" : 
#v0.14 typo corrected ofssetBefore --> offsetBefore
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/MNL/MNLENT/SYNC/TIME checkUtcGpsOffsetConfig = LISTPARAM MRBTS-${MRBTS}/MNL-1/MNLENT-1/SYNC-1/TIME-1 utcGpsOffsetConfig 0 offsetBefore == LISTPARAM MRBTS-${MRBTS}/MNL-1/MNLENT-1/SYNC-1/TIME-1 utcGpsOffsetConfig 0 offsetBefore ? CONST "notEmpty" : 
#v0.14 end
dependence_del_target_relative minor LIST MRBTS/MNL/MNLENT/SYNC/TIME utcGpsOffsetConfig ? PARAM MRBTS-${MRBTS}/MNL-1/MNLENT-1/SYNC-1/TIME-1 checkUtcGpsOffsetConfig == CONST "empty"
del_param minor TIME checkUtcGpsOffsetConfig


#1.6 MRBTS/BTSSCL parameters
del_param minor MRBTS cmSyncCheck
move_param minor MRBTS MNL cmSyncCheckPeriod
del_param minor MRBTS configDataRevisionNumber
move_param minor MRBTS MNL validatePlanAgainstDetectedHW 
del_param minor MRBTS sharedRfTechnologies
move_param minor BTSSCL MNL btsName
rename_param minor BTSSCL ledContrl ledControl
move_param minor BTSSCL SMOD ledControl
move_param minor BTSSCL SMOD operatingMode

#v0.13 BTSSCL deleted too early
#del_cls minor BTSSCL
#v0.13 end
del_param minor MRBTS actAldSwUpdate
del_param minor MRBTS actEthernetSec
del_param minor MRBTS resetToTestDedicated
del_param minor MRBTS platformRootId



#2. LTE3296-D - MNL/CELLMAPPING
#2.1 new MOCs
add_cls minor MNLENT/CELLMAPPING-1
set_operation minor CELLMAPPING create

#v0.8 rename_cls logic different in BTSSM
#rename_cls minor MRBTS/BTSSCL/LCELL MRBTS/MNL/MNLENT/CELLMAPPING/LCELL
#del_param minor LCELL repeaterDelay

dependence_add_obj_with_special_instance minor LCELL MRBTS/MNL/MNLENT/CELLMAPPING/LCELL_NEW + 0
set_operation minor LCELL_NEW create

move_list minor LCELL LCELL_NEW resourceList

del_cls minor LCELL
#v0.13 BTSSCL deleted too early
del_cls minor BTSSCL
#v0.13 end
rename_cls minor LCELL_NEW LCELL
#v0.8 end


add_cls minor LCELL/CHANNELGROUP-1
set_operation minor CHANNELGROUP create


#2.2 CHANNEL objects replace legacy LCELL::resourceList
#LCELL::resourceList::antlDN --> CHANNEL antlDN
#LCELL::resourceList::txRxUsage --> CHANNEL direction

#2.2.1 LCELL::resourceList * txRxUsage TXRX --> TX + RX (2 items)
#resourceList TXRX --> TX
#tempResourceList --> RX items
copy_list_param minor LCELL LCELL resourceList tempResourceList
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/MNL/MNLENT/CELLMAPPING/LCELL resourceList * txRxUsage = LISTPARAM MRBTS-${MRBTS}/MNL-${MNL}/MNLENT-${MNLENT}/CELLMAPPING-${CELLMAPPING}/LCELL-${LCELL} resourceList ${resourceList} txRxUsage == CONST "TXRX" ? CONST "TX" : 
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/MNL/MNLENT/CELLMAPPING/LCELL tempResourceList * txRxUsage = LISTPARAM MRBTS-${MRBTS}/MNL-${MNL}/MNLENT-${MNLENT}/CELLMAPPING-${CELLMAPPING}/LCELL-${LCELL} tempResourceList ${tempResourceList} txRxUsage != CONST "TXRX" ? CONST "notToBeUsed" : 
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/MNL/MNLENT/CELLMAPPING/LCELL tempResourceList * txRxUsage = LISTPARAM MRBTS-${MRBTS}/MNL-${MNL}/MNLENT-${MNLENT}/CELLMAPPING-${CELLMAPPING}/LCELL-${LCELL} tempResourceList ${tempResourceList} txRxUsage == CONST "TXRX" ? CONST "RX" : 

#2.2.2 resourceList_new == empty 0 item + resourceList + tempResourceList
add_list minor LCELL resourceList_new
add_list_item minor LCELL resourceList_new
add_list_param minor LCELL resourceList * key temp
dependence_move_list_item_relative minor MRBTS/MNL/MNLENT/CELLMAPPING/LCELL resourceList key temp MRBTS-${MRBTS}/MNL-${MNL}/MNLENT-${MNLENT}/CELLMAPPING-${CELLMAPPING}/LCELL-${LCELL} resourceList_new
dependence_move_list_item_relative minor MRBTS/MNL/MNLENT/CELLMAPPING/LCELL tempResourceList txRxUsage RX MRBTS-${MRBTS}/MNL-${MNL}/MNLENT-${MNLENT}/CELLMAPPING-${CELLMAPPING}/LCELL-${LCELL} resourceList_new

#2.2.3 create CHANNELGROUP/CHANNEL MOC for every LCELL::resourceList_new item
dependence_add_obj_with_next_free_instance minor structuredList MRBTS/MNL/MNLENT/CELLMAPPING/LCELL MRBTS/MNL/MNLENT/CELLMAPPING/LCELL/CHANNELGROUP/CHANNEL resourceList_new - - -

#2.2.4 CHANNEL instances start from 0, delete CHANNEL-0
del_cls minor CHANNEL-0
set_operation minor CHANNEL create

#2.2.5 set params
add_param minor CHANNEL antlDN value
add_param minor CHANNEL direction value
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/MNL/MNLENT/CELLMAPPING/LCELL/CHANNELGROUP/CHANNEL antlDN = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/MNL-${MNL}/MNLENT-${MNLENT}/CELLMAPPING-${CELLMAPPING}/LCELL-${LCELL} resourceList_new ${CHANNEL} antlDN :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/MNL/MNLENT/CELLMAPPING/LCELL/CHANNELGROUP/CHANNEL direction = CONST "true" == CONST "true" ? LISTPARAM MRBTS-${MRBTS}/MNL-${MNL}/MNLENT-${MNLENT}/CELLMAPPING-${CELLMAPPING}/LCELL-${LCELL} resourceList_new ${CHANNEL} txRxUsage :

#2.6 cleanup
del_list minor LCELL resourceList
del_list minor LCELL tempResourceList
del_list minor LCELL resourceList_new





####################################################################################################################
# migration included in TLF17_1610_001
####################################################################################################################

#Macro only
#LTE3265		GPS outage handling for OTDOA FDD



###########
# COMMON: #
###########
#LTE3071 NB-LTE for IoT - no migration - NBIOTPR optional

#LTE2906/LTE2907 - FDD-LTE 17 FSMr3/AirScale Capacity and Dimensioning
#OM_LTE_SFS_RNL_16993 The following new mandatory parameter must be initialized with its default value: LNCEL-maxNumCaUeScell
add_param minor LNCEL maxNumCaUeScell 400

#FZC CRL14227 Remove eMBMS feature development for FZC from xL17SP and xL17SP_MP
#hidden at the GUI
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS actMBMS = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/FTM-1/UNIT-1 unitTypeExpected == CONST "FZC1100" ? CONST "false" :




####################################################################################################################
# LTE3296-J - Single OAM - included in TLF17_1610_001
####################################################################################################################
#Harmonized Object Model for SRAN and LTE - EQM/EQM_R - FZC/SFN

#1. New MOCs
#1.1 DISCOVERY, APFEATURES, ANTFEATURES, APSYNC
#v0.8 rename_cls logic different in BTSSM
#rename_cls minor APMOD-1/APANTMOD ANTMOD

add_cls minor APEQM/APANTMOD_NEW-1
add_cls minor APEQM/APANTMOD_NEW-2
add_cls minor APEQM/APANTMOD_NEW-3
add_cls minor APEQM/APANTMOD_NEW-4
add_cls minor APEQM/APANTMOD_NEW-5
add_cls minor APEQM/APANTMOD_NEW-6
add_cls minor APEQM/APANTMOD_NEW-7
add_cls minor APEQM/APANTMOD_NEW-8
add_cls minor APEQM/APANTMOD_NEW-9
add_cls minor APEQM/APANTMOD_NEW-10
add_cls minor APEQM/APANTMOD_NEW-11
add_cls minor APEQM/APANTMOD_NEW-12
set_operation minor APANTMOD_NEW create

#copy parameters from old APANTMOD MOCs to APANTMOD_NEW
dependence_add_param_based_on_MOC_instance minor APANTMOD_NEW instanceId + 0
dependence_add_param_based_on_MOC_instance minor APANTMOD instanceId + 0
dependence_add_param_based_on_MOC_instance minor APEQM apeqmInstanceId + 0

dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/APANTMOD_NEW instanceId = CONST 1 == CONST 1 ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM} apeqmInstanceId JOIN CONST "_" JOIN PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/APANTMOD_NEW-${APANTMOD_NEW} instanceId :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/APMOD/APANTMOD instanceId = CONST 1 == CONST 1 ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM} apeqmInstanceId JOIN CONST "_" JOIN PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/APMOD-${APMOD}/APANTMOD-${APANTMOD} instanceId :

dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM/APANTMOD_NEW instanceId PARAM MRBTS/EQM/APEQM/APMOD/APANTMOD instanceId PARAM actLocationLock
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM/APANTMOD_NEW instanceId PARAM MRBTS/EQM/APEQM/APMOD/APANTMOD instanceId PARAM altitudeConf
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM/APANTMOD_NEW instanceId PARAM MRBTS/EQM/APEQM/APMOD/APANTMOD instanceId PARAM autoConHWId
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM/APANTMOD_NEW instanceId PARAM MRBTS/EQM/APEQM/APMOD/APANTMOD instanceId PARAM autoConSiteId
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM/APANTMOD_NEW instanceId PARAM MRBTS/EQM/APEQM/APMOD/APANTMOD instanceId PARAM latitudeConf

#v0.9 dependence_copy_param_value_based_on_relation_matching rule logic different in BTSSM
#dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM/APANTMOD_NEW instanceId PARAM MRBTS/EQM/APEQM/APMOD/APANTMOD instanceId LISTVALUE locationLockConf
#add_list_item minor APANTMOD_NEW locationLockConf
#add_list_param minor APANTMOD_NEW locationLockConf 0 alarmingPeriod value
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM/APANTMOD_NEW instanceId PARAM MRBTS/EQM/APEQM/APMOD/APANTMOD instanceId LISTPARAM locationLockConf alarmingPeriod
add_list_param minor APANTMOD_NEW locationLockConf 0 automaticDisable value
add_list_param minor APANTMOD_NEW locationLockConf 0 detectionMethods value
add_list_param minor APANTMOD_NEW locationLockConf 0 gnssTriggerDistance value
#dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/EQM/APEQM/APANTMOD_NEW locationLockConf 0 alarmingPeriod = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/EQM-1/APEQM-${APEQM}/APMOD-1/APANTMOD-${APANTMOD_NEW} locationLockConf 0 alarmingPeriod :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/EQM/APEQM/APANTMOD_NEW locationLockConf 0 automaticDisable = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/EQM-1/APEQM-${APEQM}/APMOD-1/APANTMOD-${APANTMOD_NEW} locationLockConf 0 automaticDisable :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/EQM/APEQM/APANTMOD_NEW locationLockConf 0 detectionMethods = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/EQM-1/APEQM-${APEQM}/APMOD-1/APANTMOD-${APANTMOD_NEW} locationLockConf 0 detectionMethods :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/EQM/APEQM/APANTMOD_NEW locationLockConf 0 gnssTriggerDistance = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/EQM-1/APEQM-${APEQM}/APMOD-1/APANTMOD-${APANTMOD_NEW} locationLockConf 0 gnssTriggerDistance :
#v0.9 end

dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM/APANTMOD_NEW instanceId PARAM MRBTS/EQM/APEQM/APMOD/APANTMOD instanceId PARAM longitudeConf
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM/APANTMOD_NEW instanceId PARAM MRBTS/EQM/APEQM/APMOD/APANTMOD instanceId PARAM moduleLocation
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM/APANTMOD_NEW instanceId PARAM MRBTS/EQM/APEQM/APMOD/APANTMOD instanceId PARAM prodCodePlanned
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM/APANTMOD_NEW instanceId PARAM MRBTS/EQM/APEQM/APMOD/APANTMOD instanceId PARAM tolerance

#delete empty APANTMOD_NEW
add_param minor APANTMOD_NEW toBeDeleted true
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/APANTMOD_NEW toBeDeleted = PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/APANTMOD_NEW-${APANTMOD_NEW} actLocationLock == PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/APANTMOD_NEW-${APANTMOD_NEW} actLocationLock ? CONST "false" :
dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/APANTMOD_NEW ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/APANTMOD_NEW-${APANTMOD_NEW} toBeDeleted == CONST "true"
del_param minor APANTMOD_NEW toBeDeleted

#cleanup
del_cls minor APANTMOD
rename_cls minor APANTMOD_NEW ANTMOD
del_param minor ANTMOD instanceId
#v0.8 end

#v0.7 ANTMOD/ANTDISCOVERY used for ANTMOD migration due to move_param rule specific working
add_cls minor ANTMOD/ANTDISCOVERY-1
add_cls minor ANTMOD/ANTFEATURES-1
add_cls minor APMOD/DISCOVERY-1
add_cls minor APMOD/APFEATURES-1
set_operation minor ANTDISCOVERY create
set_operation minor DISCOVERY create
set_operation minor ANTFEATURES create
set_operation minor APFEATURES create
add_cls minor APMOD/APSYNC-1
set_operation minor APSYNC create

#1.2 locationLockConf ==> UNITLLOCK
dependence_add_obj_with_next_free_instance minor structuredList MRBTS/EQM/APEQM/APMOD MRBTS/EQM/APEQM/APMOD/APFEATURES/UNITLLOCK locationLockConf - - -
dependence_add_obj_with_next_free_instance minor structuredList MRBTS/EQM/APEQM/APMOD MRBTS/EQM/APEQM/APMOD/APFEATURES/UNITLLOCK locationLockConf - - -
dependence_add_obj_with_next_free_instance minor structuredList MRBTS/EQM/APEQM/ANTMOD MRBTS/EQM/APEQM/ANTMOD/ANTFEATURES/UNITLLOCK locationLockConf - - -
dependence_add_obj_with_next_free_instance minor structuredList MRBTS/EQM/APEQM/ANTMOD MRBTS/EQM/APEQM/ANTMOD/ANTFEATURES/UNITLLOCK locationLockConf - - -
del_cls minor UNITLLOCK-0
set_operation minor UNITLLOCK create

add_param minor UNITLLOCK alarmingPeriod value
add_param minor UNITLLOCK automaticDisable value
add_param minor UNITLLOCK detectionMethods value
add_param minor UNITLLOCK gnssTriggerDistance value
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/ANTMOD/ANTFEATURES/UNITLLOCK alarmingPeriod = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-${ANTMOD} locationLockConf 0 alarmingPeriod :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/ANTMOD/ANTFEATURES/UNITLLOCK automaticDisable = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-${ANTMOD} locationLockConf 0 automaticDisable :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/ANTMOD/ANTFEATURES/UNITLLOCK detectionMethods = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-${ANTMOD} locationLockConf 0 detectionMethods :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/ANTMOD/ANTFEATURES/UNITLLOCK gnssTriggerDistance = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-${ANTMOD} locationLockConf 0 gnssTriggerDistance :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/APMOD/APFEATURES/UNITLLOCK alarmingPeriod = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/APMOD-${APMOD} locationLockConf 0 alarmingPeriod :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/APMOD/APFEATURES/UNITLLOCK automaticDisable = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/APMOD-${APMOD} locationLockConf 0 automaticDisable :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/APMOD/APFEATURES/UNITLLOCK detectionMethods = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/APMOD-${APMOD} locationLockConf 0 detectionMethods :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/APMOD/APFEATURES/UNITLLOCK gnssTriggerDistance = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/APMOD-${APMOD} locationLockConf 0 gnssTriggerDistance :
del_list minor APANTMOD locationLockConf
del_list minor ANTMOD locationLockConf
del_list minor APMOD locationLockConf

#1.2 delete/move APMOD parameters
del_param minor APMOD altitude
del_param minor APMOD apLnCelIdList
del_param minor APMOD apMultipleCarrier
del_param minor APMOD apType
del_param minor APMOD latitude
del_param minor APMOD longitude
del_param minor APMOD operationalState
del_param minor APMOD ribsSyncStatus
rename_param minor APMOD apHwType prodCodePlanned
move_param minor APMOD DISCOVERY autoConHWId
move_param minor APMOD DISCOVERY autoConSiteId
move_param minor APMOD DISCOVERY tolerance
move_param minor APMOD DISCOVERY altitudeConf
move_param minor APMOD DISCOVERY latitudeConf
move_param minor APMOD DISCOVERY longitudeConf
move_param minor APMOD APSYNC actHybridSynch
move_param minor APMOD APSYNC ribsEarfcn
move_param minor APMOD APSYNC ribsSrcCellId
move_param minor APMOD APSYNC ppsTimingOffset
rename_param minor APSYNC ppsTimingOffset airframeTimingOffset
move_list minor APMOD APSYNC coreModuleSyncInputList
rename_list minor APSYNC coreModuleSyncInputList syncInputList
move_param minor APMOD APGNSS locationMode
del_param minor APMOD locationMode
move_param minor APMOD APFEATURES actLocationLock
move_param minor APMOD APFEATURES actSfn

#1.3 delete/move ANTMOD parameters
del_param minor ANTMOD altitude
del_param minor ANTMOD antType
del_param minor ANTMOD latitude
del_param minor ANTMOD longitude
del_param minor ANTMOD operationalState
del_param minor ANTMOD prodCode
del_param minor ANTMOD siteId
#v0.7 ANTMOD/ANTDISCOVERY used for ANTMOD migration due to move_param rule specific working
move_param minor ANTMOD ANTDISCOVERY autoConHWId
move_param minor ANTMOD ANTDISCOVERY autoConSiteId
move_param minor ANTMOD ANTDISCOVERY tolerance
move_param minor ANTMOD ANTDISCOVERY altitudeConf
move_param minor ANTMOD ANTDISCOVERY latitudeConf
move_param minor ANTMOD ANTDISCOVERY longitudeConf
move_param minor ANTMOD ANTFEATURES actLocationLock

#1.4 delete APGNSS parameters
del_param minor APGNSS gnssConstellationMode
del_param minor APGNSS gnssUnitName
#v0.3 APGNSS-gnssControlMode "All-in-view" ==> "GPS-GLONASS"
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/APMOD/APGNSS gnssControlMode = PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/APMOD-${APMOD}/APGNSS-${APGNSS} gnssControlMode == CONST "All-in-view" ? CONST "GPS-GLONASS" : 
#v0.3 end
#v0.7 ANTMOD/ANTDISCOVERY used for ANTMOD migration due to move_param rule specific working
rename_cls minor ANTDISCOVERY DISCOVERY
#v0.7 end

#2. CHANNEL::antlDN
#MRBTS-1/EQM-1/APEQM-1/RMOD-2/ANTL-1          - FZM - no change
#MRBTS-1/EQM-1/APEQM-x/APMOD-1/RMOD-1/ANTL-1  - FZC - add APMOD-1
#MRBTS-1/EQM-1/APEQM-x/ANTMOD-y/RMOD-1/ANTL-1 - FZM/FZC + SFN - RMOD-2 ==> RMOD-1, APEQM-101 ==> APEQM-1, add ANTMOD-y

#2.1 build ANTL path
add_param minor ANTL path "MRBTS-"
dependence_add_param_based_on_MOC_instance minor MRBTS mrbtsInstanceId + 0
dependence_add_param_based_on_MOC_instance minor APEQM apeqmInstanceId + 0
dependence_add_param_based_on_MOC_instance minor RMOD rmodInstanceId + 0
dependence_add_param_based_on_MOC_instance minor ANTL antlInstanceId + 0
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/RMOD/ANTL path = CONST 0 == CONST 0 ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/RMOD-${RMOD}/ANTL-${ANTL} path JOIN PARAM MRBTS-${MRBTS} mrbtsInstanceId JOIN CONST "/EQM-1/APEQM-" JOIN PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM} apeqmInstanceId JOIN CONST "/RMOD-" JOIN PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/RMOD-${RMOD} rmodInstanceId JOIN CONST "/ANTL-" JOIN PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/RMOD-${RMOD}/ANTL-${ANTL} antlInstanceId : 

#2.2 copy antModId and apAntModId (RMOD ==> CHANNEL)
add_param minor ANTL antModId value
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/RMOD/ANTL antModId = PARAM MRBTS-${MRBTS}/LNBTS-${MRBTS}/FTM-1/UNIT-1 unitTypeExpected != CONST "FZC1100" ? LISTPARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/RMOD-${RMOD} connectionList 0 antModId : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/RMOD/ANTL antModId = PARAM MRBTS-${MRBTS}/LNBTS-${MRBTS}/FTM-1/UNIT-1 unitTypeExpected == CONST "FZC1100" ? LISTPARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/RMOD-${RMOD} connectionList 0 apAntModId : 
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/MNL/MNLENT/CELLMAPPING/LCELL/CHANNELGROUP/CHANNEL antlDN PARAM MRBTS/EQM/APEQM/RMOD/ANTL path PARAM antModId

#2.3 copy operatingMode (APMOD ==> CHANNEL)
add_param minor ANTL operatingMode value
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/RMOD/ANTL operatingMode = PARAM MRBTS-${MRBTS}/LNBTS-${MRBTS}/FTM-1/UNIT-1 unitTypeExpected != CONST "FZC1100" ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-1/SMOD-1 operatingMode : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/RMOD/ANTL operatingMode = PARAM MRBTS-${MRBTS}/LNBTS-${MRBTS}/FTM-1/UNIT-1 unitTypeExpected == CONST "FZC1100" ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/APMOD-1 operatingMode : 
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/MNL/MNLENT/CELLMAPPING/LCELL/CHANNELGROUP/CHANNEL antlDN PARAM MRBTS/EQM/APEQM/RMOD/ANTL path PARAM operatingMode

#2.4 prepare antlDN dependantly on FZC/FZM/SFN
add_param minor CHANNEL fzcAntlDN value
add_param minor CHANNEL sfnAntlDN value
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/MNL/MNLENT/CELLMAPPING/LCELL/CHANNELGROUP/CHANNEL fzcAntlDN = CONST 0 == CONST 0 ? PARAM MRBTS-${MRBTS}/MNL-1/MNLENT-1/CELLMAPPING-1/LCELL-${LCELL}/CHANNELGROUP-1/CHANNEL-${CHANNEL} antlDN :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/MNL/MNLENT/CELLMAPPING/LCELL/CHANNELGROUP/CHANNEL sfnAntlDN = CONST 0 == CONST 0 ? PARAM MRBTS-${MRBTS}/MNL-1/MNLENT-1/CELLMAPPING-1/LCELL-${LCELL}/CHANNELGROUP-1/CHANNEL-${CHANNEL} antlDN :
regex_replace minor PARAM MRBTS-*/MNL-*/MNLENT-*/CELLMAPPING-*/LCELL-*/CHANNELGROUP-*/CHANNEL-* fzcAntlDN REPLACE "/RMOD" ALL "/APMOD-1/RMOD"
regex_replace minor PARAM MRBTS-*/MNL-*/MNLENT-*/CELLMAPPING-*/LCELL-*/CHANNELGROUP-*/CHANNEL-* fzcAntlDN REPLACE "APEQM-101" ALL "APEQM-1"
regex_replace minor PARAM MRBTS-*/MNL-*/MNLENT-*/CELLMAPPING-*/LCELL-*/CHANNELGROUP-*/CHANNEL-* sfnAntlDN REPLACE "RMOD-[0-9]*" ALL "RMOD-1"
regex_replace minor PARAM MRBTS-*/MNL-*/MNLENT-*/CELLMAPPING-*/LCELL-*/CHANNELGROUP-*/CHANNEL-* sfnAntlDN REPLACE "APEQM-101" ALL "APEQM-1"

#2.4 prepare sfnAntlDN
add_param minor CHANNEL sfnAntlDNending value
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/MNL/MNLENT/CELLMAPPING/LCELL/CHANNELGROUP/CHANNEL sfnAntlDNending = CONST 0 == CONST 0 ? PARAM MRBTS-${MRBTS}/MNL-1/MNLENT-1/CELLMAPPING-1/LCELL-${LCELL}/CHANNELGROUP-1/CHANNEL-${CHANNEL} sfnAntlDN :
regex_replace minor PARAM MRBTS-*/MNL-*/MNLENT-*/CELLMAPPING-*/LCELL-*/CHANNELGROUP-*/CHANNEL-* sfnAntlDN REPLACE "RMOD-[0-9]*/ANTL-[0-9]*" ALL ""
regex_replace minor PARAM MRBTS-*/MNL-*/MNLENT-*/CELLMAPPING-*/LCELL-*/CHANNELGROUP-*/CHANNEL-* sfnAntlDNending REPLACE "MRBTS-[0-9]*/EQM-1/APEQM-[0-9]*" ALL ""
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/MNL/MNLENT/CELLMAPPING/LCELL/CHANNELGROUP/CHANNEL sfnAntlDN = CONST 0 == CONST 0 ? PARAM MRBTS-${MRBTS}/MNL-1/MNLENT-1/CELLMAPPING-1/LCELL-${LCELL}/CHANNELGROUP-1/CHANNEL-${CHANNEL} sfnAntlDN JOIN CONST "ANTMOD-" JOIN PARAM MRBTS-${MRBTS}/MNL-1/MNLENT-1/CELLMAPPING-1/LCELL-${LCELL}/CHANNELGROUP-1/CHANNEL-${CHANNEL} antModId JOIN PARAM MRBTS-${MRBTS}/MNL-1/MNLENT-1/CELLMAPPING-1/LCELL-${LCELL}/CHANNELGROUP-1/CHANNEL-${CHANNEL} sfnAntlDNending : 

#2.5 choose right antlDN
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/MNL/MNLENT/CELLMAPPING/LCELL/CHANNELGROUP/CHANNEL antlDN = PARAM MRBTS-${MRBTS}/MNL-1/MNLENT-1/CELLMAPPING-1/LCELL-${LCELL}/CHANNELGROUP-1/CHANNEL-${CHANNEL} operatingMode == CONST "SFN" ? PARAM MRBTS-${MRBTS}/MNL-1/MNLENT-1/CELLMAPPING-1/LCELL-${LCELL}/CHANNELGROUP-1/CHANNEL-${CHANNEL} sfnAntlDN :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/MNL/MNLENT/CELLMAPPING/LCELL/CHANNELGROUP/CHANNEL antlDN = PARAM MRBTS-${MRBTS}/MNL-1/MNLENT-1/CELLMAPPING-1/LCELL-${LCELL}/CHANNELGROUP-1/CHANNEL-${CHANNEL} operatingMode == CONST "Normal" && PARAM MRBTS-${MRBTS}/LNBTS-${MRBTS}/FTM-1/UNIT-1 unitTypeExpected == CONST "FZC1100" ? PARAM MRBTS-${MRBTS}/MNL-1/MNLENT-1/CELLMAPPING-1/LCELL-${LCELL}/CHANNELGROUP-1/CHANNEL-${CHANNEL} fzcAntlDN :

#v0.6 PR199132, remove "ANTMOD-value" for SFN ANT should be migrated like FZM
regex_replace minor PARAM MRBTS-*/MNL-*/MNLENT-*/CELLMAPPING-*/LCELL-*/CHANNELGROUP-*/CHANNEL-* antlDN REPLACE "/ANTMOD-value" ALL ""
#v0.6 end

#2.6 cleanup
del_param minor CHANNEL antModId
del_param minor CHANNEL fzcAntlDN
del_param minor CHANNEL sfnAntlDN
del_param minor CHANNEL sfnAntlDNending
del_param minor CHANNEL operatingMode
del_param minor MRBTS mrbtsInstanceId
del_param minor APEQM apeqmInstanceId
del_param minor RMOD rmodInstanceId
del_param minor ANTL antlInstanceId
del_param minor ANTL path
del_param minor ANTL antModId
del_param minor ANTL operatingMode


#3. SMOD CABINET ==> CONTROLLER (FZC only)
#3.1 add CONTROLLER only for FZC
add_cls minor EQM/CONTROLLER-1
set_operation minor CONTROLLER create
dependence_del_target_relative minor MOC MRBTS/EQM/CONTROLLER ? PARAM MRBTS-${MRBTS}/LNBTS-${MRBTS}/FTM-1/UNIT-1 unitTypeExpected != CONST "FZC1100"
#v0.11 dependence_del_target_relative logic different in BTSSM
#dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/CABINET ? PARAM MRBTS-${MRBTS}/LNBTS-${MRBTS}/FTM-1/UNIT-1 unitTypeExpected == CONST "FZC1100"
#v0.11 end
#add_param minor MRBTS whereAreWe inFZM
#dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS whereAreWe = PARAM MRBTS-${MRBTS}/LNBTS-${MRBTS} maxNumClusterUe == PARAM MRBTS-${MRBTS}/LNBTS-${MRBTS} maxNumClusterUe ? inFZC : 
#dependence_del_target_relative minor MOC MRBTS/EQM/CONTROLLER ? PARAM MRBTS-${MRBTS} whereAreWe == CONST "inFZC"
#dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/CABINET ? PARAM MRBTS-${MRBTS} whereAreWe == CONST "inFZM"
#del_param minor MRBTS whereAreWe

#3.2 move SMOD parameters only for FZC
#add_cls minor SMOD/CNTRL-1
#set_operation minor CNTRL create
#dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/CABINET/SMOD/CNTRL ? PARAM MRBTS-${MRBTS}/LNBTS-${MRBTS}/FTM-1/UNIT-1 unitTypeExpected != CONST "FZC1100"
#move_param minor SMOD CNTRL eutraSupport
#move_param minor SMOD CNTRL geranSupport
#move_param minor SMOD CNTRL ledControl
#move_param minor SMOD CNTRL moduleLocation
#move_param minor SMOD CNTRL operatingMode
#move_param minor SMOD CNTRL prodCodePlanned
#move_param minor SMOD CNTRL utranSupport
#rename_cls minor APEQM/CABINET/SMOD/CNTRL CONTROLLER/SMOD

#v0.8 rename_cls logic different in BTSSM
add_cls minor CONTROLLER/SMOD_NEW-1
set_operation minor SMOD_NEW create

move_param minor SMOD SMOD_NEW eutraSupport
move_param minor SMOD SMOD_NEW geranSupport
move_param minor SMOD SMOD_NEW ledControl
move_param minor SMOD SMOD_NEW moduleLocation
move_param minor SMOD SMOD_NEW operatingMode
move_param minor SMOD SMOD_NEW prodCodePlanned
move_param minor SMOD SMOD_NEW utranSupport

dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/CABINET/SMOD ? PARAM MRBTS-${MRBTS}/LNBTS-${MRBTS}/FTM-1/UNIT-1 unitTypeExpected == CONST "FZC1100"
rename_cls minor SMOD_NEW SMOD

#v0.8 end

#3.3 cleanup
del_param minor SMOD administrativeState
dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/CABINET/SMOD ? PARAM MRBTS-${MRBTS}/LNBTS-${MRBTS}/FTM-1/UNIT-1 unitTypeExpected == CONST "FZC1100"
dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/CABINET ? PARAM MRBTS-${MRBTS}/LNBTS-${MRBTS}/FTM-1/UNIT-1 unitTypeExpected == CONST "FZC1100"

#v0.10 dependence_del_target_relative rule logic different in BTSSM
dependence_add_param_based_on_MOC_instance minor APEQM apeqmInstanceId + 0
#dependence_del_target_relative minor MOC MRBTS/EQM/APEQM-1 ? PARAM MRBTS-${MRBTS}/LNBTS-${MRBTS}/FTM-1/UNIT-1 unitTypeExpected == CONST "FZC1100"
dependence_del_target_relative minor MOC MRBTS/EQM/APEQM ? PARAM MRBTS-${MRBTS}/LNBTS-${MRBTS}/FTM-1/UNIT-1 unitTypeExpected == CONST "FZC1100" && PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM} apeqmInstanceId == CONST "1"
#v0.10 end

#rename_cls minor APEQM-101/RMOD APEQM-1/RMOD
#rename_cls minor APEQM-101/APMOD APEQM-1/APMOD
#del_cls minor APEQM-101


#4. Temporarily delete PASSDEV MOC
dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/PASSDEV ? PARAM MRBTS-${MRBTS}/LNBTS-${MRBTS}/FTM-1/UNIT-1 unitTypeExpected == CONST "FZC1100"
#4.1 PASSDEV APEQM-1 ==> CONTROLLER (FZC only) - maybe needed later
#add_cls minor PASSDEV/CNTRL-1
#set_operation minor CNTRL create
#dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/PASSDEV/CNTRL ? PARAM MRBTS-${MRBTS}/LNBTS-${MRBTS}/FTM-1/UNIT-1 unitTypeExpected != CONST "FZC1100"
#move_param minor PASSDEV CNTRL deviceDescription
#move_param minor PASSDEV CNTRL serialNumber
#move_param minor PASSDEV CNTRL vendorName
#move_param minor PASSDEV CNTRL vendorUnitTypeNumber
#move_param minor PASSDEV CNTRL versionNumber
#rename_cls minor APEQM/PASSDEV/CNTRL CONTROLLER/PASSDEV


#5. RMOD ==> ANTMOD/RMOD (FZC/FZM + SFN)
#5.1 add new RMOD to ANTMOD
add_cls minor ANTMOD/newRMODnew-1
set_operation minor newRMODnew create

#5.2 sign RMOD with ANTMOD instance number and APEQM instance number
dependence_add_param_based_on_MOC_instance minor APEQM apeqmInstanceId + 0
add_param minor RMOD antModId value
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/RMOD antModId = PARAM MRBTS-${MRBTS}/LNBTS-${MRBTS}/FTM-1/UNIT-1 unitTypeExpected == CONST "FZC1100" ? LISTPARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/RMOD-${RMOD} connectionList 0 apAntModId : LISTPARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/RMOD-${RMOD} connectionList 0 antModId
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/RMOD antModId = CONST 0 == CONST 0 ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM} apeqmInstanceId JOIN CONST "_" JOIN PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/RMOD-${RMOD} antModId : 

#5.3 sign new RMOD with ANTMOD instance number and APEQM instance number
dependence_add_param_based_on_MOC_instance minor ANTMOD antmodInstanceId + 0
add_param minor newRMODnew antmodInstanceId value
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/ANTMOD/newRMODnew antmodInstanceId = CONST 1 == CONST 1 ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM} apeqmInstanceId JOIN CONST "_" JOIN PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-${ANTMOD} antmodInstanceId : 

#5.4 move only prodCodePlanned RMOD ==> new RMOD (ANTMOD id matching)
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM/ANTMOD/newRMODnew antmodInstanceId PARAM MRBTS/EQM/APEQM/RMOD antModId PARAM prodCodePlanned
dependence_del_target_relative minor PARAM MRBTS/EQM/APEQM/RMOD prodCodePlanned ? PARAM MRBTS-${MRBTS}/EQM-1/APEQM-${APEQM}/APMOD-1 operatingMode == CONST "SFN"

#5.5 add new ANTL to new RMOD
add_cls minor newRMODnew/newANTLnew-1
add_cls minor newRMODnew/newANTLnew-2
add_cls minor newRMODnew/newANTLnew-3
add_cls minor newRMODnew/newANTLnew-4
set_operation minor newANTLnew create

#5.6 sign new ANTL with instance number and ANTMOD instance number and APEQM instance number
dependence_add_param_based_on_MOC_instance minor newANTLnew antlInstanceId + 0
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/ANTMOD/newRMODnew/newANTLnew antlInstanceId = CONST 1 == CONST 1 ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM} apeqmInstanceId JOIN CONST "_" JOIN PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-${ANTMOD} antmodInstanceId JOIN CONST "_" JOIN PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-${ANTMOD}/newRMODnew-${newRMODnew}/newANTLnew-${newANTLnew} antlInstanceId : 

#5.7 sign ANTL with instance number and ANTMOD instance number and APEQM instance number (antmodId)
dependence_add_param_based_on_MOC_instance minor ANTL antlInstanceId + 0
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/RMOD/ANTL antlInstanceId = CONST 1 == CONST 1 ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/RMOD-${RMOD} antModId JOIN CONST "_" JOIN PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/RMOD-${RMOD}/ANTL-${ANTL} antlInstanceId : 

#5.8 move only antennaRoundTripDelay ANTL ==> new ANTL (antlInstanceId matching)
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM/ANTMOD/newRMODnew/newANTLnew antlInstanceId PARAM MRBTS/EQM/APEQM/RMOD/ANTL antlInstanceId PARAM antennaRoundTripDelay
dependence_del_target_relative minor PARAM MRBTS/EQM/APEQM/RMOD/ANTL antennaRoundTripDelay ? PARAM MRBTS-${MRBTS}/EQM-1/APEQM-${APEQM}/APMOD-1 operatingMode == CONST "SFN"

#5.9 delete empty MOCs
add_param minor newANTLnew check isEmpty
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/ANTMOD/newRMODnew/newANTLnew check = PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-${ANTMOD}/newRMODnew-${newRMODnew}/newANTLnew-${newANTLnew} antennaRoundTripDelay == PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-${ANTMOD}/newRMODnew-${newRMODnew}/newANTLnew-${newANTLnew} antennaRoundTripDelay ? CONST "notEmpty" :
dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/ANTMOD/newRMODnew/newANTLnew ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-${ANTMOD}/newRMODnew-${newRMODnew}/newANTLnew-${newANTLnew} check == CONST "isEmpty"
add_param minor newRMODnew check isEmpty
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/ANTMOD/newRMODnew check = PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-${ANTMOD}/newRMODnew-${newRMODnew} prodCodePlanned == PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-${ANTMOD}/newRMODnew-${newRMODnew} prodCodePlanned ? CONST "notEmpty" :
dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/ANTMOD/newRMODnew ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-${ANTMOD}/newRMODnew-${newRMODnew} check == CONST "isEmpty"

#5.10 SFN cleanup
del_param minor ANTMOD antmodInstanceId
del_param minor APEQM apeqmInstanceId
del_param minor RMOD antModId
del_param minor ANTL antlInstanceId
del_param minor newRMODnew antmodInstanceId
del_param minor newRMODnew check
del_param minor newANTLnew antlInstanceId
del_param minor newANTLnew check

#v0.6 PR199132, SFN ANT (operatingMode == CONST "SFN" and no ANTMOD present) should be migrated like FZM
#dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/RMOD/ANTL ? PARAM MRBTS-${MRBTS}/EQM-1/APEQM-1/CABINET-1/SMOD-1 operatingMode == CONST "SFN"
#dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/RMOD ? PARAM MRBTS-${MRBTS}/EQM-1/APEQM-1/CABINET-1/SMOD-1 operatingMode == CONST "SFN"
#dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/RMOD ? PARAM MRBTS-${MRBTS}/EQM-1/APEQM-${APEQM}/APMOD-1 operatingMode == CONST "SFN"
#dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/RMOD/ANTL ? PARAM MRBTS-${MRBTS}/EQM-1/APEQM-${APEQM}/APMOD-1 operatingMode == CONST "SFN"

add_param minor APEQM hasAntmod false
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM hasAntmod = PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-1 prodCodePlanned == PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-1 prodCodePlanned ? CONST "true" :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM hasAntmod = PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-2 prodCodePlanned == PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-2 prodCodePlanned ? CONST "true" :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM hasAntmod = PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-3 prodCodePlanned == PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-3 prodCodePlanned ? CONST "true" :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM hasAntmod = PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-4 prodCodePlanned == PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-4 prodCodePlanned ? CONST "true" :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM hasAntmod = PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-5 prodCodePlanned == PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-5 prodCodePlanned ? CONST "true" :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM hasAntmod = PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-6 prodCodePlanned == PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-6 prodCodePlanned ? CONST "true" :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM hasAntmod = PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-7 prodCodePlanned == PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-7 prodCodePlanned ? CONST "true" :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM hasAntmod = PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-8 prodCodePlanned == PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-8 prodCodePlanned ? CONST "true" :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM hasAntmod = PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-9 prodCodePlanned == PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-9 prodCodePlanned ? CONST "true" :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM hasAntmod = PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-10 prodCodePlanned == PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-10 prodCodePlanned ? CONST "true" :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM hasAntmod = PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-11 prodCodePlanned == PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-11 prodCodePlanned ? CONST "true" :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM hasAntmod = PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-12 prodCodePlanned == PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-11 prodCodePlanned ? CONST "true" :

dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/RMOD/ANTL ? PARAM MRBTS-${MRBTS}/EQM-1/APEQM-1/CABINET-1/SMOD-1 operatingMode == CONST "SFN" && PARAM MRBTS-${MRBTS}/EQM-1/APEQM-1 hasAntmod == CONST "true"
dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/RMOD ? PARAM MRBTS-${MRBTS}/EQM-1/APEQM-1/CABINET-1/SMOD-1 operatingMode == CONST "SFN" && PARAM MRBTS-${MRBTS}/EQM-1/APEQM-1 hasAntmod == CONST "true"
dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/RMOD ? PARAM MRBTS-${MRBTS}/EQM-1/APEQM-${APEQM}/APMOD-1 operatingMode == CONST "SFN" && PARAM MRBTS-${MRBTS}/EQM-1/APEQM-${APEQM} hasAntmod == CONST "true"
dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/RMOD/ANTL ? PARAM MRBTS-${MRBTS}/EQM-1/APEQM-${APEQM}/APMOD-1 operatingMode == CONST "SFN" && PARAM MRBTS-${MRBTS}/EQM-1/APEQM-${APEQM} hasAntmod == CONST "true"

del_param minor APEQM hasAntmod
#v0.6 end

#rename_cls minor newANTLnew ANTL
#rename_cls minor newRMODnew RMOD


#5.11 RMOD ==> APMOD/RMOD (FZC no SFN only)
#v0.8 rename_cls logic different in BTSSM
#FZM: APEQM-1/RMOD ==> APEQM-1/RMOD
#FZC: APEQM-[2-101]/RMOD ==> APEQM-[2-101]/APMOD-1/RMOD
#rename_cls minor APEQM-1/RMOD APEQM-1/fzmRMODfzm
#rename_cls minor RMOD APMOD-1/RMOD
#rename_cls minor fzmRMODfzm RMOD

add_cls minor APMOD/RMOD_NEW-1
add_cls minor APMOD/RMOD_NEW-2
add_cls minor APMOD/RMOD_NEW-3
add_cls minor APMOD/RMOD_NEW-4
set_operation minor RMOD_NEW create
add_param minor RMOD_NEW prodCodePlanned temp
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/APMOD/RMOD_NEW prodCodePlanned = CONST 1 == CONST 1 ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/RMOD-${RMOD_NEW} prodCodePlanned :
#v0.13 RMOD deleted too early
#dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/APMOD/RMOD_NEW ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/APMOD-${APMOD}/RMOD_NEW-${RMOD_NEW} prodCodePlanned == CONST "temp"
#dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/RMOD ? PARAM MRBTS-${MRBTS}/LNBTS-${MRBTS}/FTM-1/UNIT-1 unitTypeExpected == CONST "FZC1100"
#v0.13 end
add_cls minor RMOD_NEW/ANTL_NEW-1
add_cls minor RMOD_NEW/ANTL_NEW-2
add_cls minor RMOD_NEW/ANTL_NEW-3
add_cls minor RMOD_NEW/ANTL_NEW-4
set_operation minor ANTL_NEW create
add_param minor ANTL_NEW antennaRoundTripDelay temp
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/APMOD/RMOD_NEW/ANTL_NEW antennaRoundTripDelay = CONST 1 == CONST 1 ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/RMOD-${RMOD_NEW}/ANTL-${ANTL_NEW} antennaRoundTripDelay :
dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/APMOD/RMOD_NEW/ANTL_NEW ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/APMOD-${APMOD}/RMOD_NEW-${RMOD_NEW}/ANTL_NEW-${ANTL_NEW} antennaRoundTripDelay == CONST "temp"
dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/RMOD/ANTL ? PARAM MRBTS-${MRBTS}/LNBTS-${MRBTS}/FTM-1/UNIT-1 unitTypeExpected == CONST "FZC1100"
#v0.13 RMOD deleted too early
dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/APMOD/RMOD_NEW ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/APMOD-${APMOD}/RMOD_NEW-${RMOD_NEW} prodCodePlanned == CONST "temp"
dependence_del_target_relative minor MOC MRBTS/EQM/APEQM/RMOD ? PARAM MRBTS-${MRBTS}/LNBTS-${MRBTS}/FTM-1/UNIT-1 unitTypeExpected == CONST "FZC1100"
#v0.13 end
rename_cls minor RMOD_NEW RMOD
rename_cls minor ANTL_NEW ANTL

rename_cls minor newANTLnew ANTL
rename_cls minor newRMODnew RMOD


#APEQM-101 ==> APEQM-1
#rename_cls minor APEQM-101/ANTMOD APEQM-1/ANTMOD
#rename_cls minor APEQM-101/APMOD APEQM-1/APMOD
#v0.4 APEQM-101 ==> APEQM-1
#add_cls minor APEQM/TEMPCLASS-1
#set_operation minor TEMPCLASS create
#rename_cls minor APEQM-101/TEMPCLASS APEQM
#del_cls minor TEMPCLASS
#v0.4 end
#del_cls minor APEQM-101

#APEQM/APMOD-1, RMOD[ ,1-2](only in FZM - no need to migrate), ANTMOD-[ ,1-12]
#ANTMOD/RMOD[ ,1-2], DISCOVERY-1, ANTFEATURES-1
#RMOD/ANTL
#ANTFEATURES-1/UNITLLOCK[ ,1]
#APMOD/APFEATURES-1, APSYNC-1, APGNSS-[ ,1], APTNL-1, RMOD[ ,1-2], DISCOVERY-1
#APFEATURES-1/UNITLLOCK[ ,1]
#RMOD/ANTL[1-255,1-255,1-255,1-255](antennaRoundTripDelay)
#APTNL/APB2TH-1, APELNK-[11-14,11-14], APFTM-1, APIEIF-1, APL2SW-1, APPOE-[ ,1], APSTPG-1, APTAC-1, APWIFI-[ ,1]


add_cls minor EQM/APEQM_NEW-1
set_operation minor APEQM_NEW create
#delete APEQM_NEW-1 if APEQM-101 did not existed so far and it is FZC
dependence_add_param_based_on_MOC_instance minor APEQM tempInstanceId + 0
add_param minor EQM apeqmHundredOneExists no
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM apeqmHundredOneExists = PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-101 tempInstanceId == CONST "101" ? CONST "yes" :
dependence_del_target_relative minor MOC MRBTS/EQM/APEQM_NEW ? PARAM MRBTS-${MRBTS}/EQM-${EQM} apeqmHundredOneExists == CONST "no"
del_param minor EQM apeqmHundredOneExists


#APEQM-101/ANTMOD
add_cls minor APEQM_NEW/ANTMOD_NEW-1
add_cls minor APEQM_NEW/ANTMOD_NEW-2
add_cls minor APEQM_NEW/ANTMOD_NEW-3
add_cls minor APEQM_NEW/ANTMOD_NEW-4
add_cls minor APEQM_NEW/ANTMOD_NEW-5
add_cls minor APEQM_NEW/ANTMOD_NEW-6
add_cls minor APEQM_NEW/ANTMOD_NEW-7
add_cls minor APEQM_NEW/ANTMOD_NEW-8
add_cls minor APEQM_NEW/ANTMOD_NEW-9
add_cls minor APEQM_NEW/ANTMOD_NEW-10
add_cls minor APEQM_NEW/ANTMOD_NEW-11
add_cls minor APEQM_NEW/ANTMOD_NEW-12
dependence_add_param_based_on_MOC_instance minor ANTMOD instanceId + 0
dependence_add_param_based_on_MOC_instance minor ANTMOD_NEW instanceId + 0
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM_NEW/ANTMOD_NEW instanceId = CONST 1 == CONST 1 ? CONST "101_" JOIN PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM_NEW-${APEQM_NEW}/ANTMOD_NEW-${ANTMOD_NEW} instanceId :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/ANTMOD instanceId = CONST 1 == CONST 1 ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM} tempInstanceId JOIN CONST "_" JOIN PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/ANTMOD-${ANTMOD} instanceId :

dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM_NEW/ANTMOD_NEW instanceId PARAM MRBTS/EQM/APEQM/ANTMOD instanceId PARAM actLocationLock
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM_NEW/ANTMOD_NEW instanceId PARAM MRBTS/EQM/APEQM/ANTMOD instanceId PARAM altitudeConf
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM_NEW/ANTMOD_NEW instanceId PARAM MRBTS/EQM/APEQM/ANTMOD instanceId PARAM autoConHWId
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM_NEW/ANTMOD_NEW instanceId PARAM MRBTS/EQM/APEQM/ANTMOD instanceId PARAM autoConSiteId
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM_NEW/ANTMOD_NEW instanceId PARAM MRBTS/EQM/APEQM/ANTMOD instanceId PARAM latitudeConf

#v0.9 dependence_copy_param_value_based_on_relation_matching rule logic different in BTSSM
#dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM_NEW/ANTMOD_NEW instanceId PARAM MRBTS/EQM/APEQM/ANTMOD instanceId LISTVALUE locationLockConf
#add_list_item minor ANTMOD_NEW locationLockConf
#add_list_param minor ANTMOD_NEW locationLockConf 0 alarmingPeriod value
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM_NEW/ANTMOD_NEW instanceId PARAM MRBTS/EQM/APEQM/ANTMOD instanceId LISTPARAM locationLockConf alarmingPeriod
add_list_param minor ANTMOD_NEW locationLockConf 0 automaticDisable value
add_list_param minor ANTMOD_NEW locationLockConf 0 detectionMethods value
add_list_param minor ANTMOD_NEW locationLockConf 0 gnssTriggerDistance value
#dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/EQM/APEQM_NEW/ANTMOD_NEW locationLockConf 0 alarmingPeriod = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-101/ANTMOD-${ANTMOD_NEW} locationLockConf 0 alarmingPeriod :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/EQM/APEQM_NEW/ANTMOD_NEW locationLockConf 0 automaticDisable = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-101/ANTMOD-${ANTMOD_NEW} locationLockConf 0 automaticDisable :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/EQM/APEQM_NEW/ANTMOD_NEW locationLockConf 0 detectionMethods = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-101/ANTMOD-${ANTMOD_NEW} locationLockConf 0 detectionMethods :
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/EQM/APEQM_NEW/ANTMOD_NEW locationLockConf 0 gnssTriggerDistance = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-101/ANTMOD-${ANTMOD_NEW} locationLockConf 0 gnssTriggerDistance :
#v0.9 end

dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM_NEW/ANTMOD_NEW instanceId PARAM MRBTS/EQM/APEQM/ANTMOD instanceId PARAM longitudeConf
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM_NEW/ANTMOD_NEW instanceId PARAM MRBTS/EQM/APEQM/ANTMOD instanceId PARAM moduleLocation
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM_NEW/ANTMOD_NEW instanceId PARAM MRBTS/EQM/APEQM/ANTMOD instanceId PARAM prodCodePlanned
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM_NEW/ANTMOD_NEW instanceId PARAM MRBTS/EQM/APEQM/ANTMOD instanceId PARAM tolerance

#delete empty ANTMOD_NEW
add_param minor ANTMOD_NEW toBeDeleted true
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM_NEW/ANTMOD_NEW toBeDeleted = PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM_NEW-${APEQM_NEW}/ANTMOD_NEW-${ANTMOD_NEW} actLocationLock == PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM_NEW-${APEQM_NEW}/ANTMOD_NEW-${ANTMOD_NEW} actLocationLock ? CONST "false" :
dependence_del_target_relative minor MOC MRBTS/EQM/APEQM_NEW/ANTMOD_NEW ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM_NEW-${APEQM_NEW}/ANTMOD_NEW-${ANTMOD_NEW} toBeDeleted == CONST "true"
del_param minor ANTMOD_NEW toBeDeleted
del_param minor ANTMOD_NEW instanceId
del_param minor ANTMOD instanceId
#v0.12 del_cls logic different in BTSSM
#del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-1
#del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-2
#del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-3
#del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-4
#del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-5
#del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-6
#del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-7
#del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-8
#del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-9
#del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-10
#del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-11
#del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-12
#v0.12 end


#APEQM-101/ANTMOD/RMOD
add_cls minor ANTMOD_NEW/RMOD_NEW-1
add_cls minor ANTMOD_NEW/RMOD_NEW-2
set_operation minor RMOD_NEW create
add_param minor RMOD_NEW prodCodePlanned temp
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM_NEW/ANTMOD_NEW/RMOD_NEW prodCodePlanned = CONST 1 == CONST 1 ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-101/ANTMOD-${ANTMOD_NEW}/RMOD-${RMOD_NEW} prodCodePlanned :
dependence_del_target_relative minor MOC MRBTS/EQM/APEQM_NEW/ANTMOD_NEW/RMOD_NEW ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM_NEW-${APEQM_NEW}/ANTMOD_NEW-${ANTMOD_NEW}/RMOD_NEW-${RMOD_NEW} prodCodePlanned == CONST "temp"
#v0.12 del_cls logic different in BTSSM
#del_cls minor MRBTS/EQM/APEQM-101/ANTMOD/RMOD-1
#del_cls minor MRBTS/EQM/APEQM-101/ANTMOD/RMOD-2
#del_cls minor MRBTS/EQM/APEQM-101/ANTMOD/RMOD-3
#del_cls minor MRBTS/EQM/APEQM-101/ANTMOD/RMOD-4
#v0.12 end

add_cls minor RMOD_NEW/ANTL_NEW-1
add_cls minor RMOD_NEW/ANTL_NEW-2
add_cls minor RMOD_NEW/ANTL_NEW-3
add_cls minor RMOD_NEW/ANTL_NEW-4
set_operation minor ANTL_NEW create
add_param minor ANTL_NEW antennaRoundTripDelay temp
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM_NEW/ANTMOD_NEW/RMOD_NEW/ANTL_NEW antennaRoundTripDelay = CONST 1 == CONST 1 ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-101/ANTMOD-${ANTMOD_NEW}/RMOD-${RMOD_NEW}/ANTL-${ANTL_NEW} antennaRoundTripDelay :
dependence_del_target_relative minor MOC MRBTS/EQM/APEQM_NEW/ANTMOD_NEW/RMOD_NEW/ANTL_NEW ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM_NEW-${APEQM_NEW}/ANTMOD_NEW-${ANTMOD_NEW}/RMOD_NEW-${RMOD_NEW}/ANTL_NEW-${ANTL_NEW} antennaRoundTripDelay == CONST "temp"
del_cls minor MRBTS/EQM/APEQM-101/ANTMOD/RMOD/ANTL-1
del_cls minor MRBTS/EQM/APEQM-101/ANTMOD/RMOD/ANTL-2
del_cls minor MRBTS/EQM/APEQM-101/ANTMOD/RMOD/ANTL-3
del_cls minor MRBTS/EQM/APEQM-101/ANTMOD/RMOD/ANTL-4
#v0.12 del_cls logic different in BTSSM
del_cls minor MRBTS/EQM/APEQM-101/ANTMOD/RMOD-1
del_cls minor MRBTS/EQM/APEQM-101/ANTMOD/RMOD-2
del_cls minor MRBTS/EQM/APEQM-101/ANTMOD/RMOD-3
del_cls minor MRBTS/EQM/APEQM-101/ANTMOD/RMOD-4
#v0.12 end

rename_cls minor RMOD_NEW RMOD
rename_cls minor ANTL_NEW ANTL


#APEQM-101/ANTMOD/DISCOVERY
add_cls minor ANTMOD_NEW/DISCOVERY-0
add_list minor DISCOVERY tempKeyList
add_list_item minor DISCOVERY tempKeyList
add_list_param minor DISCOVERY tempKeyList 0 tempKey temp
add_list minor ANTMOD_NEW tempKeyList
add_list_item minor ANTMOD_NEW tempKeyList
add_list_param minor ANTMOD_NEW tempKeyList 0 tempKey temp
dependence_move_cls_if_key_atributes_match minor MRBTS/EQM/APEQM-101/ANTMOD/DISCOVERY tempKeyList tempKey - - - MRBTS/EQM/APEQM_NEW/ANTMOD_NEW tempKeyList tempKey - - - DISCOVERY
del_cls minor DISCOVERY-0
del_cls minor MRBTS/EQM/APEQM-101/ANTMOD/DISCOVERY
del_list minor DISCOVERY tempKeyList


#APEQM-101/ANTMOD/ANTFEATURES
add_cls minor ANTMOD_NEW/ANTFEATURES_NEW-0
add_list minor ANTFEATURES tempKeyList
add_list_item minor ANTFEATURES tempKeyList
add_list_param minor ANTFEATURES tempKeyList 0 tempKey temp
add_list minor ANTFEATURES_NEW tempKeyList
add_list_item minor ANTFEATURES_NEW tempKeyList
add_list_param minor ANTFEATURES_NEW tempKeyList 0 tempKey temp
dependence_move_cls_if_key_atributes_match minor MRBTS/EQM/APEQM-101/ANTMOD/ANTFEATURES tempKeyList tempKey - - - MRBTS/EQM/APEQM_NEW/ANTMOD_NEW tempKeyList tempKey - - - ANTFEATURES_NEW
del_cls minor ANTFEATURES_NEW-0
del_cls minor MRBTS/EQM/APEQM-101/ANTMOD/ANTFEATURES

add_cls minor ANTFEATURES_NEW/UNITLLOCK-0
add_list minor UNITLLOCK tempKeyList
add_list_item minor UNITLLOCK tempKeyList
add_list_param minor UNITLLOCK tempKeyList 0 tempKey temp
dependence_move_cls_if_key_atributes_match minor MRBTS/EQM/APEQM-101/ANTMOD/ANTFEATURES/UNITLLOCK tempKeyList tempKey - - - MRBTS/EQM/APEQM_NEW/ANTMOD_NEW/ANTFEATURES_NEW tempKeyList tempKey - - - ANTFEATURES_NEW
del_cls minor UNITLLOCK-0
del_cls minor MRBTS/EQM/APEQM-101/ANTMOD/ANTFEATURES/UNITLLOCK
#v0.12 del_cls logic different in BTSSM
del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-1
del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-2
del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-3
del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-4
del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-5
del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-6
del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-7
del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-8
del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-9
del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-10
del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-11
del_cls minor MRBTS/EQM/APEQM-101/ANTMOD-12
#v0.12 end

rename_cls minor ANTFEATURES_NEW ANTFEATURES
rename_cls minor ANTMOD_NEW ANTMOD
del_list minor ANTMOD tempKeyList
del_list minor DISCOVERY tempKeyList
del_list minor ANTFEATURES tempKeyList
del_list minor UNITLLOCK tempKeyList



#APEQM-101/APMOD
add_cls minor APEQM_NEW/APMOD_NEW-0
add_list minor APEQM_NEW tempKeyList
add_list_item minor APEQM_NEW tempKeyList
add_list_param minor APEQM_NEW tempKeyList 0 tempKey temp

add_list minor APMOD tempKeyList
add_list_item minor APMOD tempKeyList
add_list_param minor APMOD tempKeyList 0 tempKey temp
add_list minor APMOD_NEW tempKeyList
add_list_item minor APMOD_NEW tempKeyList
add_list_param minor APMOD_NEW tempKeyList 0 tempKey temp
dependence_move_cls_if_key_atributes_match minor MRBTS/EQM/APEQM-101/APMOD-1 tempKeyList tempKey - - - MRBTS/EQM/APEQM_NEW tempKeyList tempKey - - - APMOD_NEW
del_cls minor APMOD_NEW-0
#v0.12 del_cls logic different in BTSSM
#del_cls minor MRBTS/EQM/APEQM-101/APMOD
#v0.12 end

#APEQM-101/APMOD/APFEATURES
add_cls minor APMOD_NEW/APFEATURES_NEW-0
add_list minor APFEATURES tempKeyList
add_list_item minor APFEATURES tempKeyList
add_list_param minor APFEATURES tempKeyList 0 tempKey temp
add_list minor APFEATURES_NEW tempKeyList
add_list_item minor APFEATURES_NEW tempKeyList
add_list_param minor APFEATURES_NEW tempKeyList 0 tempKey temp
dependence_move_cls_if_key_atributes_match minor MRBTS/EQM/APEQM-101/APMOD/APFEATURES tempKeyList tempKey - - - MRBTS/EQM/APEQM_NEW/APMOD_NEW tempKeyList tempKey - - - APFEATURES_NEW
del_cls minor APFEATURES_NEW-0
#v0.12 del_cls logic different in BTSSM
#del_cls minor MRBTS/EQM/APEQM-101/APMOD/APFEATURES
#v0.12 end

add_cls minor APFEATURES_NEW/UNITLLOCK-0
add_list minor UNITLLOCK tempKeyList
add_list_item minor UNITLLOCK tempKeyList
add_list_param minor UNITLLOCK tempKeyList 0 tempKey temp
dependence_move_cls_if_key_atributes_match minor MRBTS/EQM/APEQM-101/APMOD/APFEATURES/UNITLLOCK tempKeyList tempKey - - - MRBTS/EQM/APEQM_NEW/APMOD_NEW/APFEATURES_NEW tempKeyList tempKey - - - UNITLLOCK
del_cls minor UNITLLOCK-0
del_cls minor MRBTS/EQM/APEQM-101/APMOD/APFEATURES/UNITLLOCK
#v0.12 del_cls logic different in BTSSM
del_cls minor MRBTS/EQM/APEQM-101/APMOD/APFEATURES
#v0.12 end

rename_cls minor APFEATURES_NEW APFEATURES
del_list minor APFEATURES tempKeyList
del_list minor UNITLLOCK tempKeyList



#APEQM-101/APMOD/APGNSS
add_cls minor APMOD_NEW/APGNSS-0
add_list minor APGNSS tempKeyList
add_list_item minor APGNSS tempKeyList
add_list_param minor APGNSS tempKeyList 0 tempKey temp
dependence_move_cls_if_key_atributes_match minor MRBTS/EQM/APEQM-101/APMOD/APGNSS tempKeyList tempKey - - - MRBTS/EQM/APEQM_NEW/APMOD_NEW tempKeyList tempKey - - - APGNSS
del_cls minor APGNSS-0
del_cls minor MRBTS/EQM/APEQM-101/APMOD/APGNSS
del_list minor APGNSS tempKeyList


#APEQM-101/APMOD/DISCOVERY
add_cls minor APMOD_NEW/DISCOVERY-0
add_list minor DISCOVERY tempKeyList
add_list_item minor DISCOVERY tempKeyList
add_list_param minor DISCOVERY tempKeyList 0 tempKey temp
dependence_move_cls_if_key_atributes_match minor MRBTS/EQM/APEQM-101/APMOD/DISCOVERY tempKeyList tempKey - - - MRBTS/EQM/APEQM_NEW/APMOD_NEW tempKeyList tempKey - - - DISCOVERY
del_cls minor DISCOVERY-0
del_cls minor MRBTS/EQM/APEQM-101/APMOD/DISCOVERY
del_list minor DISCOVERY tempKeyList


#APEQM-101/APMOD/APSYNC
add_cls minor APMOD_NEW/APSYNC-0
add_list minor APSYNC tempKeyList
add_list_item minor APSYNC tempKeyList
add_list_param minor APSYNC tempKeyList 0 tempKey temp
dependence_move_cls_if_key_atributes_match minor MRBTS/EQM/APEQM-101/APMOD/APSYNC tempKeyList tempKey - - - MRBTS/EQM/APEQM_NEW/APMOD_NEW tempKeyList tempKey - - - APSYNC
del_cls minor APSYNC-0
del_cls minor MRBTS/EQM/APEQM-101/APMOD/APSYNC
del_list minor APSYNC tempKeyList


#APEQM-101/APMOD/RMOD
add_cls minor APMOD_NEW/RMOD_NEW-1
add_cls minor APMOD_NEW/RMOD_NEW-2
add_cls minor APMOD_NEW/RMOD_NEW-3
add_cls minor APMOD_NEW/RMOD_NEW-4
set_operation minor RMOD_NEW create
add_param minor RMOD_NEW prodCodePlanned temp
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM_NEW/APMOD_NEW/RMOD_NEW prodCodePlanned = CONST 1 == CONST 1 ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-101/APMOD-${APMOD_NEW}/RMOD-${RMOD_NEW} prodCodePlanned :
dependence_del_target_relative minor MOC MRBTS/EQM/APEQM_NEW/APMOD_NEW/RMOD_NEW ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM_NEW-${APEQM_NEW}/APMOD_NEW-${APMOD_NEW}/RMOD_NEW-${RMOD_NEW} prodCodePlanned == CONST "temp"
#v0.12 del_cls logic different in BTSSM
#del_cls minor MRBTS/EQM/APEQM-101/APMOD/RMOD-1
#del_cls minor MRBTS/EQM/APEQM-101/APMOD/RMOD-2
#del_cls minor MRBTS/EQM/APEQM-101/APMOD/RMOD-3
#del_cls minor MRBTS/EQM/APEQM-101/APMOD/RMOD-4
#v0.12 end

add_cls minor RMOD_NEW/ANTL_NEW-1
add_cls minor RMOD_NEW/ANTL_NEW-2
add_cls minor RMOD_NEW/ANTL_NEW-3
add_cls minor RMOD_NEW/ANTL_NEW-4
set_operation minor ANTL_NEW create
add_param minor ANTL_NEW antennaRoundTripDelay temp
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM_NEW/APMOD_NEW/RMOD_NEW/ANTL_NEW antennaRoundTripDelay = CONST 1 == CONST 1 ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-101/APMOD-${APMOD_NEW}/RMOD-${RMOD_NEW}/ANTL-${ANTL_NEW} antennaRoundTripDelay :
dependence_del_target_relative minor MOC MRBTS/EQM/APEQM_NEW/APMOD_NEW/RMOD_NEW/ANTL_NEW ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM_NEW-${APEQM_NEW}/APMOD_NEW-${APMOD_NEW}/RMOD_NEW-${RMOD_NEW}/ANTL_NEW-${ANTL_NEW} antennaRoundTripDelay == CONST "temp"
del_cls minor MRBTS/EQM/APEQM-101/APMOD/RMOD/ANTL-1
del_cls minor MRBTS/EQM/APEQM-101/APMOD/RMOD/ANTL-2
del_cls minor MRBTS/EQM/APEQM-101/APMOD/RMOD/ANTL-3
del_cls minor MRBTS/EQM/APEQM-101/APMOD/RMOD/ANTL-4

#v0.12 del_cls logic different in BTSSM
del_cls minor MRBTS/EQM/APEQM-101/APMOD/RMOD-1
del_cls minor MRBTS/EQM/APEQM-101/APMOD/RMOD-2
del_cls minor MRBTS/EQM/APEQM-101/APMOD/RMOD-3
del_cls minor MRBTS/EQM/APEQM-101/APMOD/RMOD-4
#v0.12 end
rename_cls minor RMOD_NEW RMOD
rename_cls minor ANTL_NEW ANTL



#APEQM-101/APMOD/APTNL
#APTNL/APB2TH-1, APELNK-[11-14,11-14], APFTM-1, APIEIF-1, APL2SW-1, APPOE-[ ,1], APSTPG-1, APTAC-1, APWIFI-[ ,1]
add_cls minor APMOD_NEW/APTNL_NEW-1
set_operation minor APTNL_NEW create
add_list minor APTNL_NEW tempKeyList
add_list_item minor APTNL_NEW tempKeyList
add_list_param minor APTNL_NEW tempKeyList 0 tempKey temp
#v0.12 del_cls logic different in BTSSM
#del_cls minor MRBTS/EQM/APEQM-101/APMOD/APTNL
#v0.12 end

add_cls minor APTNL_NEW/APB2TH-0
add_list minor APB2TH tempKeyList
add_list_item minor APB2TH tempKeyList
add_list_param minor APB2TH tempKeyList 0 tempKey temp
dependence_move_cls_if_key_atributes_match minor MRBTS/EQM/APEQM-101/APMOD/APTNL/APB2TH tempKeyList tempKey - - - MRBTS/EQM/APEQM_NEW/APMOD_NEW/APTNL_NEW tempKeyList tempKey - - - APB2TH
del_cls minor APB2TH-0
del_cls minor MRBTS/EQM/APEQM-101/APMOD/APTNL/APB2TH
del_list minor APB2TH tempKeyList

add_cls minor APTNL_NEW/APFTM-0
add_list minor APFTM tempKeyList
add_list_item minor APFTM tempKeyList
add_list_param minor APFTM tempKeyList 0 tempKey temp
dependence_move_cls_if_key_atributes_match minor MRBTS/EQM/APEQM-101/APMOD/APTNL/APFTM tempKeyList tempKey - - - MRBTS/EQM/APEQM_NEW/APMOD_NEW/APTNL_NEW tempKeyList tempKey - - - APFTM
del_cls minor APFTM-0
del_cls minor MRBTS/EQM/APEQM-101/APMOD/APTNL/APFTM
del_list minor APFTM tempKeyList

add_cls minor APTNL_NEW/APIEIF-0
add_list minor APIEIF tempKeyList
add_list_item minor APIEIF tempKeyList
add_list_param minor APIEIF tempKeyList 0 tempKey temp
dependence_move_cls_if_key_atributes_match minor MRBTS/EQM/APEQM-101/APMOD/APTNL/APIEIF tempKeyList tempKey - - - MRBTS/EQM/APEQM_NEW/APMOD_NEW/APTNL_NEW tempKeyList tempKey - - - APIEIF
del_cls minor APIEIF-0
del_cls minor MRBTS/EQM/APEQM-101/APMOD/APTNL/APIEIF
del_list minor APIEIF tempKeyList

add_cls minor APTNL_NEW/APL2SW-0
add_list minor APL2SW tempKeyList
add_list_item minor APL2SW tempKeyList
add_list_param minor APL2SW tempKeyList 0 tempKey temp
dependence_move_cls_if_key_atributes_match minor MRBTS/EQM/APEQM-101/APMOD/APTNL/APL2SW tempKeyList tempKey - - - MRBTS/EQM/APEQM_NEW/APMOD_NEW/APTNL_NEW tempKeyList tempKey - - - APL2SW
del_cls minor APL2SW-0
del_cls minor MRBTS/EQM/APEQM-101/APMOD/APTNL/APL2SW
del_list minor APL2SW tempKeyList

add_cls minor APTNL_NEW/APPOE-0
add_list minor APPOE tempKeyList
add_list_item minor APPOE tempKeyList
add_list_param minor APPOE tempKeyList 0 tempKey temp
dependence_move_cls_if_key_atributes_match minor MRBTS/EQM/APEQM-101/APMOD/APTNL/APPOE tempKeyList tempKey - - - MRBTS/EQM/APEQM_NEW/APMOD_NEW/APTNL_NEW tempKeyList tempKey - - - APPOE
del_cls minor APPOE-0
del_cls minor MRBTS/EQM/APEQM-101/APMOD/APTNL/APPOE
del_list minor APPOE tempKeyList

add_cls minor APTNL_NEW/APSTPG-0
add_list minor APSTPG tempKeyList
add_list_item minor APSTPG tempKeyList
add_list_param minor APSTPG tempKeyList 0 tempKey temp
dependence_move_cls_if_key_atributes_match minor MRBTS/EQM/APEQM-101/APMOD/APTNL/APSTPG tempKeyList tempKey - - - MRBTS/EQM/APEQM_NEW/APMOD_NEW/APTNL_NEW tempKeyList tempKey - - - APSTPG
del_cls minor APSTPG-0
del_cls minor MRBTS/EQM/APEQM-101/APMOD/APTNL/APSTPG
del_list minor APSTPG tempKeyList

add_cls minor APTNL_NEW/APTAC-0
add_list minor APTAC tempKeyList
add_list_item minor APTAC tempKeyList
add_list_param minor APTAC tempKeyList 0 tempKey temp
dependence_move_cls_if_key_atributes_match minor MRBTS/EQM/APEQM-101/APMOD/APTNL/APTAC tempKeyList tempKey - - - MRBTS/EQM/APEQM_NEW/APMOD_NEW/APTNL_NEW tempKeyList tempKey - - - APTAC
del_cls minor APTAC-0
del_cls minor MRBTS/EQM/APEQM-101/APMOD/APTNL/APTAC
del_list minor APTAC tempKeyList

add_cls minor APTNL_NEW/APWIFI-0
add_list minor APWIFI tempKeyList
add_list_item minor APWIFI tempKeyList
add_list_param minor APWIFI tempKeyList 0 tempKey temp
dependence_move_cls_if_key_atributes_match minor MRBTS/EQM/APEQM-101/APMOD/APTNL/APWIFI tempKeyList tempKey - - - MRBTS/EQM/APEQM_NEW/APMOD_NEW/APTNL_NEW tempKeyList tempKey - - - APWIFI
del_cls minor APWIFI-0
del_cls minor MRBTS/EQM/APEQM-101/APMOD/APTNL/APWIFI
del_list minor APWIFI tempKeyList


add_cls minor APTNL_NEW/APELNK_NEW-11
add_cls minor APTNL_NEW/APELNK_NEW-12
add_cls minor APTNL_NEW/APELNK_NEW-13
add_cls minor APTNL_NEW/APELNK_NEW-14
set_operation minor APELNK_NEW create
dependence_add_param_based_on_MOC_instance minor APELNK instanceId + 0
dependence_add_param_based_on_MOC_instance minor APELNK_NEW instanceId + 0
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM_NEW/APMOD_NEW/APTNL_NEW/APELNK_NEW instanceId = CONST 1 == CONST 1 ? CONST "101_" JOIN PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM_NEW-1/APMOD_NEW-1/APTNL_NEW-1/APELNK_NEW-${APELNK_NEW} instanceId :
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM/APMOD/APTNL/APELNK instanceId = CONST 1 == CONST 1 ? PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM} tempInstanceId JOIN CONST "_" JOIN PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM}/APMOD-1/APTNL-1/APELNK-${APELNK} instanceId :

dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM_NEW/APMOD_NEW/APTNL_NEW/APELNK_NEW instanceId PARAM MRBTS/EQM/APEQM/APMOD/APTNL/APELNK instanceId PARAM administrativeState
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM_NEW/APMOD_NEW/APTNL_NEW/APELNK_NEW instanceId PARAM MRBTS/EQM/APEQM/APMOD/APTNL/APELNK instanceId PARAM l2BurstSize
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM_NEW/APMOD_NEW/APTNL_NEW/APELNK_NEW instanceId PARAM MRBTS/EQM/APEQM/APMOD/APTNL/APELNK instanceId PARAM l2ShaperRate

#v0.9 dependence_copy_param_value_based_on_relation_matching rule logic different in BTSSM
#dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM_NEW/APMOD_NEW/APTNL_NEW/APELNK_NEW instanceId PARAM MRBTS/EQM/APEQM/APMOD/APTNL/APELNK instanceId LISTVALUE l2VlanIdList
#add_list_item minor APELNK_NEW l2VlanIdList
#add_list_item minor APELNK_NEW l2VlanIdList
#add_list_item minor APELNK_NEW l2VlanIdList
#add_list_item minor APELNK_NEW l2VlanIdList
#add_list_item minor APELNK_NEW l2VlanIdList
#add_list_item minor APELNK_NEW l2VlanIdList
#add_list_item minor APELNK_NEW l2VlanIdList
#add_list_item minor APELNK_NEW l2VlanIdList
#add_list_item minor APELNK_NEW l2VlanIdList
#add_list_item minor APELNK_NEW l2VlanIdList
#add_list_item minor APELNK_NEW l2VlanIdList
#add_list_item minor APELNK_NEW l2VlanIdList
#add_list_item minor APELNK_NEW l2VlanIdList
#add_list_item minor APELNK_NEW l2VlanIdList
#add_list_item minor APELNK_NEW l2VlanIdList
#add_list_item minor APELNK_NEW l2VlanIdList
#add_list_param minor APELNK_NEW l2VlanIdList * highValue value
#add_list_param minor APELNK_NEW l2VlanIdList * lowValue value
#dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/EQM/APEQM_NEW/APMOD_NEW/APTNL_NEW/APELNK_NEW l2VlanIdList * highValue = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-101/APMOD-1/APTNL-1/APELNK-${APELNK_NEW} l2VlanIdList ${l2VlanIdList} highValue :
#dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/EQM/APEQM_NEW/APMOD_NEW/APTNL_NEW/APELNK_NEW l2VlanIdList * lowValue = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-101/APMOD-1/APTNL-1/APELNK-${APELNK_NEW} l2VlanIdList ${l2VlanIdList} lowValue :
#dependence_del_target_relative minor LISTITEM MRBTS/EQM/APEQM_NEW/APMOD_NEW/APTNL_NEW/APELNK_NEW l2VlanIdList * ? LISTPARAM MRBTS-${MRBTS}/EQM-1/APEQM_NEW-1/APMOD_NEW-1/APTNL_NEW-1/APELNK_NEW-${APELNK_NEW} l2VlanIdList ${l2VlanIdList} highValue == CONST "value"

dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM_NEW/APMOD_NEW/APTNL_NEW/APELNK_NEW instanceId PARAM MRBTS/EQM/APEQM/APMOD/APTNL/APELNK instanceId LISTPARAM l2VlanIdList highValue
add_list_param minor APELNK_NEW l2VlanIdList * lowValue value
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/EQM/APEQM_NEW/APMOD_NEW/APTNL_NEW/APELNK_NEW l2VlanIdList * lowValue = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-101/APMOD-1/APTNL-1/APELNK-${APELNK_NEW} l2VlanIdList ${l2VlanIdList} lowValue :
#v0.9 end

dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM_NEW/APMOD_NEW/APTNL_NEW/APELNK_NEW instanceId PARAM MRBTS/EQM/APEQM/APMOD/APTNL/APELNK instanceId PARAM portDefaultPriority
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM_NEW/APMOD_NEW/APTNL_NEW/APELNK_NEW instanceId PARAM MRBTS/EQM/APEQM/APMOD/APTNL/APELNK instanceId PARAM portDefaultVlanId
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM_NEW/APMOD_NEW/APTNL_NEW/APELNK_NEW instanceId PARAM MRBTS/EQM/APEQM/APMOD/APTNL/APELNK instanceId PARAM speedAndDuplex

#delete empty APELNK_NEW
add_param minor APELNK_NEW toBeDeleted true
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM_NEW/APMOD_NEW/APTNL_NEW/APELNK_NEW toBeDeleted = PARAM MRBTS-${MRBTS}/EQM-1/APEQM_NEW-1/APMOD_NEW-1/APTNL_NEW-1/APELNK_NEW-${APELNK_NEW} speedAndDuplex == PARAM MRBTS-${MRBTS}/EQM-1/APEQM_NEW-1/APMOD_NEW-1/APTNL_NEW-1/APELNK_NEW-${APELNK_NEW} speedAndDuplex ? CONST "false" :
dependence_del_target_relative minor MOC MRBTS/EQM/APEQM_NEW/APMOD_NEW/APTNL_NEW/APELNK_NEW ? PARAM MRBTS-${MRBTS}/EQM-1/APEQM_NEW-1/APMOD_NEW-1/APTNL_NEW-1/APELNK_NEW-${APELNK_NEW} toBeDeleted == CONST "true"
del_param minor APELNK_NEW toBeDeleted

del_cls minor MRBTS/EQM/APEQM-101/APMOD/APTNL/APELNK-11
del_cls minor MRBTS/EQM/APEQM-101/APMOD/APTNL/APELNK-12
del_cls minor MRBTS/EQM/APEQM-101/APMOD/APTNL/APELNK-13
del_cls minor MRBTS/EQM/APEQM-101/APMOD/APTNL/APELNK-14

#v0.12 del_cls logic different in BTSSM
del_cls minor MRBTS/EQM/APEQM-101/APMOD/APTNL
del_cls minor MRBTS/EQM/APEQM-101/APMOD
#v0.12 end

rename_cls minor APELNK_NEW APELNK
del_param minor APELNK instanceId
rename_cls minor APTNL_NEW APTNL
rename_cls minor APMOD_NEW APMOD
rename_cls minor APEQM_NEW APEQM
del_list minor APEQM tempKeyList
del_list minor APMOD tempKeyList
del_list minor APTNL tempKeyList
del_param minor APEQM tempInstanceId
del_cls minor MRBTS/EQM/APEQM-101
#v0.8 end

#5.12 delete not needed parameters
del_param minor RMOD administrativeState
del_list minor RMOD connectionList





#version
#FZM Replace# set_version major TL17
dependence_set_version major PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/FTM-${FTM}/UNIT-${UNIT} unitTypeExpected == CONST "FZC1100" ? CONST "TLC17" : CONST "TLF17"

#history:
#FZM Replace# add_log minor "Conversion from TL17 FB16.08 (003) to TL17 FB16.10 (001)"
add_log minor "Conversion from TLF17 FB16.08 (003) to TLF17 FB16.10 (001)"