###########################################
## SCFD file version: 0.2                ##
## Release: TLF/TLC18_1710_002           ##
## LTE version: TLF18_RADIO_1710_002     ##
## LTE version: TLC18_RADIO_1710_002     ##
###########################################




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

####################################################################################################################
# LTE4414 NB-IoT: Idle mode Mobility (Phase- I, Intra-frequency with SIB3-NB)
####################################################################################################################
#OM_LTE_SFS_RNL.19467 Migration of the new mandatory LTE4414 parameters
#No new mandatory parameter must be initialized with the default value.



####################################################################################################################
# CRL19098 Spare Counters addition to RISE model
####################################################################################################################
add_param minor PMRNL mtCellSpare 15min
add_param minor PMRNL mteNBSpare 15min



####################################################################################################################
# PR280418: [trunk][ASIA][LTE3443] counter of LTE VoLTE Voice Break Period histogram not updated;SBTS18
####################################################################################################################
#no migration requirements
add_param minor PMCCP maxVBreakDistThresh 2




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

####################################################################################################################
# PR274326: TLF17A: CA is not working after upgrade from TLF16A to TLF17A 
####################################################################################################################
dependence_add_param_based_on_MOC_instance minor LNBTS instanceId + 0
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/CAREL lnBtsId = CONST 1 == CONST 1 ? PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS} instanceId :
del_param minor LNBTS instanceId



#v0.2
####################################################################################################################
# PR326146: Migration updates for PR282386
# PR282386: LNCEL_TDD: maxNumUeDl, maxNumUeDlDwPTS, maxNumUeUl - limit values per MACPS request
####################################################################################################################
#check if 1 or 2 or 3 cell configuration
#MRBTS/LNBTS/LNCEL.lcrId --> MRBTS/MNL-1/MNLENT-1,2/CELLMAPPING-1/LCELL-0-255(1-3)(100)/CHANNELGROUP-1-12/CHANNEL-1-4.antlDN --> APEQM

add_list minor APEQM cellList
add_param minor APEQM countCells 0

add_param minor CHANNEL apeqmId value
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/MNL/MNLENT/CELLMAPPING/LCELL/CHANNELGROUP/CHANNEL apeqmId = CONST 1 == CONST 1 ? PARAM MRBTS-${MRBTS}/MNL-${MNL}/MNLENT-${MNLENT}/CELLMAPPING-${CELLMAPPING}/LCELL-${LCELL}/CHANNELGROUP-${CHANNELGROUP}/CHANNEL-${CHANNEL} antlDN : 
regex_replace minor PARAM MRBTS-*/MNL-*/MNLENT-*/CELLMAPPING-*/LCELL-*/CHANNELGROUP-*/CHANNEL-* apeqmId REPLACE "/RMOD-[0-9]*/ANTL-[0-9]*" ALL ""
regex_replace minor PARAM MRBTS-*/MNL-*/MNLENT-*/CELLMAPPING-*/LCELL-*/CHANNELGROUP-*/CHANNEL-* apeqmId REPLACE "/APMOD-[0-9]*" ALL ""
regex_replace minor PARAM MRBTS-*/MNL-*/MNLENT-*/CELLMAPPING-*/LCELL-*/CHANNELGROUP-*/CHANNEL-* apeqmId REPLACE "/ANTMOD-[0-9]*" ALL ""
regex_replace minor PARAM MRBTS-*/MNL-*/MNLENT-*/CELLMAPPING-*/LCELL-*/CHANNELGROUP-*/CHANNEL-* apeqmId REPLACE "MRBTS-[0-9]*/EQM-1/APEQM-" ALL ""

add_list minor LCELL apeqmList
add_list_item minor LCELL apeqmList
add_list_param minor LCELL apeqmList * apeqmId value
dependence_mod_param_conditional_expression_relative minor LISTPARAM MRBTS/MNL/MNLENT/CELLMAPPING/LCELL apeqmList 0 apeqmId = CONST 1 == CONST 1 ? PARAM MRBTS-${MRBTS}/MNL-${MNL}/MNLENT-${MNLENT}/CELLMAPPING-${CELLMAPPING}/LCELL-${LCELL}/CHANNELGROUP-*/CHANNEL-* apeqmId : 

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/MNL/MNLENT/CELLMAPPING/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/MNL/MNLENT/CELLMAPPING/LCELL cellList 0 lncelInstanceId = CONST 1 == CONST 1 ? PARAM MRBTS-${MRBTS}/MNL-${MNL}/MNLENT-${MNLENT}/CELLMAPPING-${CELLMAPPING}/LCELL-${LCELL} lncelInstanceId : 

dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/EQM/APEQM apeqmInstanceId LISTPARAM MRBTS/MNL/MNLENT/CELLMAPPING/LCELL apeqmList 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_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM countCells = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM} cellList 2 cell + PARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM} countCells : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/EQM/APEQM countCells = CONST 1 == CONST 1 ? LISTPARAM MRBTS-${MRBTS}/EQM-${EQM}/APEQM-${APEQM} cellList 3 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
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/LNBTS/LNCEL lncelInstanceId LISTPARAM MRBTS/EQM/APEQM cellList 2 lncelInstanceId PARAM countCells
dependence_copy_param_value_based_on_relation_matching minor PARAM MRBTS/LNBTS/LNCEL lncelInstanceId LISTPARAM MRBTS/EQM/APEQM cellList 3 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_param minor LNCEL lncelInstanceId
del_param minor APEQM apeqmInstanceId
del_param minor CHANNEL apeqmId
del_list minor LCELL apeqmList

#update LNCEL_TDD maxNumUeDl maxNumUeDlDwPTS maxNumUeUl
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumUeDl = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNBTS_TDD-${LNBTS_TDD} actSfn == CONST "true" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumUeDl > CONST 6 ? CONST 6 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumUeDl = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} countCells == CONST 2 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumUeDl > CONST 6 ? CONST 6 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumUeDl = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} countCells == CONST 3 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumUeDl > CONST 6 ? CONST 6 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumUeDl = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} countCells == CONST 1 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} chBw == CONST "10 MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumUeDl > CONST 10 ? CONST 10 : 

dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumUeDlDwPTS = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNBTS_TDD-${LNBTS_TDD} actSfn == CONST "true" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumUeDlDwPTS > CONST 4 ? CONST 4 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumUeDlDwPTS = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} countCells == CONST 2 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumUeDlDwPTS > CONST 4 ? CONST 4 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumUeDlDwPTS = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} countCells == CONST 3 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumUeDlDwPTS > CONST 4 ? CONST 4 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumUeDlDwPTS = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} countCells == CONST 1 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} chBw == CONST "10 MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumUeDlDwPTS > CONST 7 ? CONST 7 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumUeDlDwPTS = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} countCells == CONST 1 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} chBw == CONST "15 MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumUeDlDwPTS > CONST 8 ? CONST 8 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumUeDlDwPTS = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} countCells == CONST 1 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} chBw == CONST "20 MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumUeDlDwPTS > CONST 8 ? CONST 8 : 

dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumUeUl = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} actUlSps == CONST "false" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNBTS_TDD-${LNBTS_TDD} actSfn == CONST "true" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumUeUl > CONST 6 ? CONST 6 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumUeUl = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} actUlSps == CONST "false" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} countCells == CONST 2 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumUeUl > CONST 6 ? CONST 6 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumUeUl = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} actUlSps == CONST "false" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} countCells == CONST 3 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumUeUl > CONST 6 ? CONST 6 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumUeUl = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} actUlSps == CONST "false" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} countCells == CONST 1 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} chBw == CONST "10 MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumUeUl > CONST 10 ? CONST 10 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumUeUl = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} actUlSps == CONST "false" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} countCells == CONST 1 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} chBw == CONST "15 MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumUeUl > CONST 12 ? CONST 12 : 
dependence_mod_param_conditional_expression_relative minor PARAM MRBTS/LNBTS/LNCEL/LNCEL_TDD maxNumUeUl = PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} actUlSps == CONST "false" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL} countCells == CONST 1 && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} chBw == CONST "20 MHz" && PARAM MRBTS-${MRBTS}/LNBTS-${LNBTS}/LNCEL-${LNCEL}/LNCEL_TDD-${LNCEL_TDD} maxNumUeUl > CONST 12 ? CONST 12 : 

del_param minor LNCEL countCells
#v0.2 end










#history:
add_log minor "Conversion from TLF/TLC18_RADIO_1708_005 to TLF/TLC18_RADIO_1710_002"