DG Update and Templates for ranSlice feature
[ccsdk/distribution.git] / platform-logic / ran-slice-api / src / main / xml / ran-slice-api_instantiateRANSliceAllocate.xml
diff --git a/platform-logic/ran-slice-api/src/main/xml/ran-slice-api_instantiateRANSliceAllocate.xml b/platform-logic/ran-slice-api/src/main/xml/ran-slice-api_instantiateRANSliceAllocate.xml
new file mode 100644 (file)
index 0000000..151f7fa
--- /dev/null
@@ -0,0 +1,2094 @@
+<service-logic
+    xmlns='http://www.onap.org/sdnc/svclogic'
+    xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.onap.org/sdnc/svclogic ./svclogic.xsd' module='ran-slice-api' version='${project.version}'>
+    <method rpc='instantiateRANSliceAllocate' mode='sync'>
+        <block atomic='true'>
+            <block atomic='true'>
+                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                    <parameter name="source" value="`$prop.restapi.configdb.getNearRTRICsFromTrackingArea`"/>
+                    <parameter name="outputPath" value="tmp.configdb.getNearRTRICsFromTrackingArea.url"/>
+                    <parameter name="target" value="{trackingArea}"/>
+                    <parameter name="replacement" value="`$tmp.payload.trackingArea`"/>
+                </execute>
+                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                    <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                    <parameter name="level" value="info" />
+                    <parameter name="field1" value="URL for configDB Get NearRTRIC for tracking area"/>
+                    <parameter name='field2' value="`$prop.configdb.url + $tmp.configdb.getNearRTRICsFromTrackingArea.url`" />
+                    <parameter name='field3' value="`$tmp.payload.trackingArea`" />
+                </record>
+                <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                    <parameter name="restapiUrl" value="`$prop.configdb.url + $tmp.configdb.getNearRTRICsFromTrackingArea.url`"/>
+                    <parameter name="httpMethod" value="GET"/>
+                    <parameter name="responsePrefix" value="getRIC-configdb-response"/>
+                    <parameter name='contentType' value='application/json' />
+                    <parameter name='format' value='json' />
+                    <parameter name='accept' value='application/json' />
+                    <parameter name="convertResponse" value="true"/>
+                    <outcome value='failure'>
+                        <block>
+                            <set>
+                                <parameter name='error-code' value='500'/>
+                                <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
+                            </set>
+                            <return status='failure'>
+                                <parameter name='ack-final' value='Y'/>
+                                <parameter name='error-code' value='500'/>
+                                <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
+                            </return>
+                            <block atomic='true'>
+                                <set>
+                                    <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
+                                    <parameter name="tmp.status" value="`$error-code`"/>
+                                    <parameter name="tmp.reason" value="`$error-message`"/>
+                                    <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
+                                    <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
+                                </set>
+                                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                    <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
+                                    <parameter name="level" value="info" />
+                                    <parameter name="field1" value="URL for SO Callback Response"/>
+                                    <parameter name='field2' value="`$tmp.so.callbackURL`" />
+                                    <parameter name='field3' value="`$tmp.status`" />
+                                    <parameter name='field4' value="`$tmp.reason`" />
+                                    <parameter name='field5' value="`$tmp.requestID`" />
+                                    <parameter name='field6' value="`$tmp.action`" />
+                                    <parameter name='field7' value="`$tmp.CUCPList`" />
+                                    <parameter name='field8' value="`$tmp.CUUPList`" />
+                                    <parameter name='field9' value="`$tmp.DUList`" />
+                                </record>
+                                <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                    <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
+                                    <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
+                                    <parameter name="httpMethod" value="POST"/>
+                                    <parameter name="responsePrefix" value="so-callback-response"/>
+                                    <parameter name='contentType' value='application/json' />
+                                    <parameter name='format' value='json' />
+                                    <parameter name='accept' value='application/json' />
+                                    <outcome value='failure'>
+                                        <block>
+                                            <return status='failure'>
+                                                <parameter name='ack-final' value='Y'/>
+                                                <parameter name="error-code" value="500" />
+                                                <parameter name="error-message" value="Error sending SO Response" />
+                                            </return>
+                                        </block>
+                                    </outcome>
+                                    <outcome value='success'>
+                                        <block>
+                                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                <parameter name="level" value="info" />
+                                                <parameter name="field1" value="SO Response Sent "/>
+                                            </record>
+                                        </block>
+                                    </outcome>
+                                </execute>
+                            </block>
+                        </block>
+                    </outcome>
+                    <outcome value='success'>
+                        <block>
+                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                <parameter name="level" value="info" />
+                                <parameter name="field1" value="Successfully Obtained NearRT RIC info from ConfigDB"/>
+                                <parameter name="field2" value="`$getRIC-configdb-response._length`"/>
+                                <parameter name="field3" value="`$getRIC-configdb-response.[0].gNBCUCPList_length`"/>
+                                <parameter name="field4" value="`$getRIC-configdb-response.[0].gNBCUUPList_length`"/>
+                                <parameter name="field5" value="`$getRIC-configdb-response.[0].gNBDUList_length`"/>
+                            </record>
+                            <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
+                                <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-configrsp-context.log' />
+                            </execute>
+                        </block>
+                    </outcome>
+                </execute>
+            </block>
+            <block atomic='true'>
+                <block atomic='true'>
+                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                        <parameter name="source" value="`$prop.restapi.configdb.getListOfCells`"/>
+                        <parameter name="outputPath" value="tmp.configdb.getListOfCells.url"/>
+                        <parameter name="target" value="{trackingArea}"/>
+                        <parameter name="replacement" value="`$tmp.payload.trackingArea`"/>
+                    </execute>
+                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                        <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                        <parameter name="level" value="info" />
+                        <parameter name="field1" value="URL for configDB Get getListOfCells for tracking area"/>
+                        <parameter name='field2' value="`$prop.configdb.url + $tmp.configdb.getListOfCells.url`" />
+                        <parameter name='field3' value="`$tmp.payload.trackingArea`" />
+                    </record>
+                    <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                        <parameter name="restapiUrl" value="`$prop.configdb.url + $tmp.configdb.getListOfCells.url`"/>
+                        <parameter name="httpMethod" value="GET"/>
+                        <parameter name="responsePrefix" value="getListofCells-configdb-response"/>
+                        <parameter name='contentType' value='application/json' />
+                        <parameter name='format' value='json' />
+                        <parameter name='accept' value='application/json' />
+                        <outcome value='failure'>
+                            <block>
+                                <set>
+                                    <parameter name='error-code' value='500'/>
+                                    <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
+                                </set>
+                                <return status='failure'>
+                                    <parameter name='ack-final' value='Y'/>
+                                    <parameter name='error-code' value='500'/>
+                                    <parameter name='error-message' value='Error Getting Info from ConfigDB. Aborting RPC executiopn'/>
+                                </return>
+                                <block atomic='true'>
+                                    <set>
+                                        <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
+                                        <parameter name="tmp.status" value="`$error-code`"/>
+                                        <parameter name="tmp.reason" value="`$error-message`"/>
+                                        <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
+                                        <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
+                                    </set>
+                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                        <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
+                                        <parameter name="level" value="info" />
+                                        <parameter name="field1" value="URL for SO Callback Response"/>
+                                        <parameter name='field2' value="`$tmp.so.callbackURL`" />
+                                        <parameter name='field3' value="`$tmp.status`" />
+                                        <parameter name='field4' value="`$tmp.reason`" />
+                                        <parameter name='field5' value="`$tmp.requestID`" />
+                                        <parameter name='field6' value="`$tmp.action`" />
+                                        <parameter name='field7' value="`$tmp.CUCPList`" />
+                                        <parameter name='field8' value="`$tmp.CUUPList`" />
+                                        <parameter name='field9' value="`$tmp.DUList`" />
+                                    </record>
+                                    <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                        <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
+                                        <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
+                                        <parameter name="httpMethod" value="POST"/>
+                                        <parameter name="responsePrefix" value="so-callback-response"/>
+                                        <parameter name='contentType' value='application/json' />
+                                        <parameter name='format' value='json' />
+                                        <parameter name='accept' value='application/json' />
+                                        <outcome value='failure'>
+                                            <block>
+                                                <return status='failure'>
+                                                    <parameter name='ack-final' value='Y'/>
+                                                    <parameter name="error-code" value="500" />
+                                                    <parameter name="error-message" value="Error sending SO Response" />
+                                                </return>
+                                            </block>
+                                        </outcome>
+                                        <outcome value='success'>
+                                            <block>
+                                                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                    <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                    <parameter name="level" value="info" />
+                                                    <parameter name="field1" value="SO Response Sent "/>
+                                                </record>
+                                            </block>
+                                        </outcome>
+                                    </execute>
+                                </block>
+                            </block>
+                        </outcome>
+                        <outcome value='success'>
+                            <block>
+                                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                    <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                    <parameter name="level" value="info" />
+                                    <parameter name="field1" value="Successfully Obtained List of Cells from ConfigDB"/>
+                                    <parameter name="field2" value="`$getListofCells-configdb-response._length`"/>
+                                    <parameter name="field3" value="List of Cells in the Tracking Area Relevant for RAN Slice Instantiation "/>
+                                </record>
+                                <for index='idx' start='0' end='`$getListofCells-configdb-response._length `' >
+                                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                        <parameter name='outputPath' value='tmp.trackingarea.cell' />
+                                        <parameter name='source' value="`'getListofCells-configdb-response.[' + $ids + ']'`" />
+                                    </execute>
+                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                        <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                        <parameter name="level" value="info" />
+                                        <parameter name="field1" value="`$tmp.trackingarea.cell`"/>
+                                    </record>
+                                </for>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='printContext' >
+                                    <parameter name='filename' value='/opt/opendaylight/current/data/log/ranSlice-instantiateRANSlice-configrsp-context.log' />
+                                </execute>
+                            </block>
+                        </outcome>
+                    </execute>
+                </block>
+                <for index='id1' start='0' end="`$getRIC-configdb-response._length`" >
+                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                        <parameter name='outputPath' value='tmp.nearRTRICId' />
+                        <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].nearRTRICId'`" />
+                    </execute>
+                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                        <parameter name='outputPath' value='tmp.gNBId' />
+                        <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBId'`" />
+                    </execute>
+                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                        <parameter name='outputPath' value='tmp.ranNFNSSIListEntry' />
+                        <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].ranNFNSSIList[0]'`" />
+                    </execute>
+                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                        <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                        <parameter name="level" value="info" />
+                        <parameter name="field1" value="Config Payload Entry# "/>
+                        <parameter name="field2" value="`$id1`"/>
+                        <parameter name="field3" value="`$tmp.nearRTRICId`"/>
+                        <parameter name="field4" value="`$tmp.gNBId`"/>
+                        <parameter name="field5" value="`$tmp.ranNFNSSIListEntry`"/>
+                    </record>
+                    <block atomic='true'>
+                        <set>
+                            <parameter name='tmp.nearRTRIC.uLThptPerSlice' value='`$payloadJson.input.sliceProfile.uLThptPerSlice * 1.1`' />
+                            <parameter name='tmp.nearRTRIC.dLThptPerSlice' value='`$payloadJson.input.sliceProfile.dLThptPerSlice * 1.1`' />
+                            <parameter name='tmp.nearRTRIC.maxNumberOfConns' value='`$payloadJson.input.sliceProfile.maxNumberOfConns * 1.1`' />
+                        </set>
+                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                            <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                            <parameter name="level" value="info" />
+                            <parameter name="field1" value="Calculated uLThptPerSlice for nearRTRIC "/>
+                            <parameter name="field2" value="`$tmp.nearRTRIC.uLThptPerSlice`"/>
+                            <parameter name="field3" value="Calculated dLThptPerSlice  for nearRTRIC"/>
+                            <parameter name="field4" value="`$tmp.nearRTRIC.dLThptPerSlice`"/>
+                            <parameter name="field5" value="Calculated maxNumberOfConns  for nearRTRIC"/>
+                            <parameter name="field6" value="`$tmp.nearRTRIC.maxNumberOfConns`"/>
+                        </record>
+                        <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                            <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updatenearRTRIC`"/>
+                            <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updatenearRTRIC.json'`" />
+                            <parameter name="httpMethod" value="PUT"/>
+                            <parameter name="responsePrefix" value="update-nearRTRIC-configdb-response"/>
+                            <parameter name='contentType' value='application/json' />
+                            <parameter name='format' value='json' />
+                            <parameter name='accept' value='application/json' />
+                            <parameter name="convertResponse" value="true"/>
+                            <outcome value='failure'>
+                                <block>
+                                    <set>
+                                        <parameter name='error-code' value='500'/>
+                                        <parameter name='error-message' value='Error updating nearRTRIC info in ConfigDB. Aborting RPC executiopn'/>
+                                    </set>
+                                    <return status='failure'>
+                                        <parameter name='ack-final' value='Y'/>
+                                        <parameter name='error-code' value='500'/>
+                                        <parameter name='error-message' value='Error updating nearRTRIC info in ConfigDB. Aborting RPC executiopn'/>
+                                    </return>
+                                    <block atomic='true'>
+                                        <set>
+                                            <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
+                                            <parameter name="tmp.status" value="`$error-code`"/>
+                                            <parameter name="tmp.reason" value="`$error-message`"/>
+                                            <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
+                                            <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
+                                        </set>
+                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                            <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
+                                            <parameter name="level" value="info" />
+                                            <parameter name="field1" value="URL for SO Callback Response"/>
+                                            <parameter name='field2' value="`$tmp.so.callbackURL`" />
+                                            <parameter name='field3' value="`$tmp.status`" />
+                                            <parameter name='field4' value="`$tmp.reason`" />
+                                            <parameter name='field5' value="`$tmp.requestID`" />
+                                            <parameter name='field6' value="`$tmp.action`" />
+                                            <parameter name='field7' value="`$tmp.CUCPList`" />
+                                            <parameter name='field8' value="`$tmp.CUUPList`" />
+                                            <parameter name='field9' value="`$tmp.DUList`" />
+                                        </record>
+                                        <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                            <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
+                                            <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
+                                            <parameter name="httpMethod" value="POST"/>
+                                            <parameter name="responsePrefix" value="so-callback-response"/>
+                                            <parameter name='contentType' value='application/json' />
+                                            <parameter name='format' value='json' />
+                                            <parameter name='accept' value='application/json' />
+                                            <outcome value='failure'>
+                                                <block>
+                                                    <return status='failure'>
+                                                        <parameter name='ack-final' value='Y'/>
+                                                        <parameter name="error-code" value="500" />
+                                                        <parameter name="error-message" value="Error sending SO Response" />
+                                                    </return>
+                                                </block>
+                                            </outcome>
+                                            <outcome value='success'>
+                                                <block>
+                                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                        <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                        <parameter name="level" value="info" />
+                                                        <parameter name="field1" value="SO Response Sent "/>
+                                                    </record>
+                                                </block>
+                                            </outcome>
+                                        </execute>
+                                    </block>
+                                </block>
+                            </outcome>
+                            <outcome value='success'>
+                                <block>
+                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                        <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                        <parameter name="level" value="info" />
+                                        <parameter name="field1" value="Successfully Updated NearRT RIC info in ConfigDB"/>
+                                    </record>
+                                </block>
+                            </outcome>
+                        </execute>
+                    </block>
+                    <block atomic='true'>
+                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                            <parameter name='outputPath' value='tmp.CUCPListEntries' />
+                            <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList_length'`" />
+                        </execute>
+                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                            <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                            <parameter name="level" value="info" />
+                            <parameter name="field1" value="Number of CUCP List Entries "/>
+                            <parameter name="field2" value="`$tmp.CUCPListEntries`"/>
+                        </record>
+                        <set>
+                            <parameter name='tmp.maxNumberOfConns' value='`$payloadJson.input.sliceProfile.maxNumberOfConns * 1.1`' />
+                        </set>
+                        <for index='id2' start='0' end='`$tmp.CUCPListEntries`' >
+                            <block atomic='true'>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                    <parameter name='outputPath' value='tmp.cellCUListEntries' />
+                                    <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].cellCUList_length'`" />
+                                </execute>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                    <parameter name='outputPath' value='tmp.gNBCUCPList.gNBCUName' />
+                                    <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].gNBCUName'`" />
+                                </execute>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                    <parameter name='outputPath' value='tmp.gNBCUCPList.gNBId' />
+                                    <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].gNBId'`" />
+                                </execute>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                    <parameter name='outputPath' value='tmp.gNBCUCPList.gNBIdLength' />
+                                    <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].gNBIdLength'`" />
+                                </execute>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                    <parameter name='outputPath' value='tmp.gNBCUCPList.nFType' />
+                                    <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].nFType'`" />
+                                </execute>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                    <parameter name='outputPath' value='tmp.gNBCUCPList.pLMNId' />
+                                    <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].pLMNId'`" />
+                                </execute>
+                            </block>
+                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                <parameter name="level" value="info" />
+                                <parameter name="field1" value="Numberof cellCU of Entries "/>
+                                <parameter name="field2" value="`$tmp.cellCUListEntries`"/>
+                                <parameter name="field3" value="`$tmp.gNBCUCPList.gNBCUName`"/>
+                                <parameter name="field4" value="`$tmp.gNBCUCPList.gNBId`"/>
+                                <parameter name="field5" value="`$tmp.gNBCUCPList.gNBIdLengthh`"/>
+                                <parameter name="field6" value="`$tmp.gNBCUCPList.nFType`"/>
+                                <parameter name="field7" value="`$tmp.gNBCUCPList.pLMNId`"/>
+                            </record>
+                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                <parameter name="level" value="info" />
+                                <parameter name="field1" value="MCC "/>
+                                <parameter name="field2" value="`$tmp.mcc`"/>
+                                <parameter name="field3" value="MNC "/>
+                                <parameter name="field4" value="`$tmp.mnc`"/>
+                                <parameter name="field5" value="Calculated uLThptPerSlice "/>
+                                <parameter name="field6" value="`$tmp.uLThptPerSlice`"/>
+                                <parameter name="field7" value="Calculated dLThptPerSlice "/>
+                                <parameter name="field8" value="`$tmp.dLThptPerSlice`"/>
+                                <parameter name="field9" value="Calculated maxNumberOfConns "/>
+                                <parameter name="field10" value="`$tmp.maxNumberOfConns`"/>
+                            </record>
+                            <block atomic='true'>
+                                <set>
+                                    <parameter name='tmp.maxNumberOfConnsPercellCU' value='`$tmp.maxNumberOfConns / $tmp.cellCUListEntries`' />
+                                    <parameter name='tmp.rRMPolicyDedicatedRatio.CellCU1' value='`$tmp.maxNumberOfConnsPercellCU * 100`' />
+                                    <parameter name='tmp.rRMPolicyDedicatedRatio.CellCU' value='`$tmp.rRMPolicyDedicatedRatio.CellCU1 / $prop.nrcellcu.maxNumberOfConnsPerCell`' />
+                                </set>
+                                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                    <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                    <parameter name="level" value="info" />
+                                    <parameter name="field1" value="rRMPolicyDedicatedRatio for CellCU "/>
+                                    <parameter name="field2" value="`$tmp.rRMPolicyDedicatedRatio.CellCU`"/>
+                                </record>
+                            </block>
+                            <for index='id3' start='0' end='`$getListofCells-configdb-response._length `' >
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                    <parameter name='outputPath' value='tmp.cellLocalId' />
+                                    <parameter name='source' value="`'getListofCells-configdb-response.[' + $id3 + ']'`" />
+                                </execute>
+                                <for index='idCell' start='0' end='`$tmp.cellCUListEntries `' >
+                                    <block atomic='true'>
+                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                            <parameter name='outputPath' value='tmp.gNBCUCPList.cellLocalId' />
+                                            <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].cellCUList[' + $idCell + '].cellLocalId'`" />
+                                        </execute>
+                                        <switch test="`$tmp.gNBCUCPList.cellLocalId == $tmp.cellLocalId`">
+                                            <outcome value='true'>
+                                                <block atomic='true'>
+                                                    <block atomic='true'>
+                                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                                            <parameter name='outputPath' value='tmp.pLMNInfoListEntries' />
+                                                            <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUCPList[' + $id2 + '].cellCUList[' + $id3 + '].pLMNInfoList_length'`" />
+                                                        </execute>
+                                                    </block>
+                                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                        <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                        <parameter name="level" value="info" />
+                                                        <parameter name="field1" value="Numberof pLMNInfoList Entries "/>
+                                                        <parameter name="field2" value="`$tmp.pLMNInfoListEntries`"/>
+                                                        <parameter name="field3" value="cellLocalId from Relevant cells "/>
+                                                        <parameter name="field4" value="`$tmp.cellLocalId`"/>
+                                                    </record>
+                                                    <for index='id4' start='0' end='`$tmp.pLMNInfoListEntries`' >
+                                                        <block atomic='true'>
+                                                            <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                                                <parameter name='outputPath' value='tmp.fromRAN.sNSSAI' />
+                                                                <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].cellDUList[' + $id3 + '].pLMNInfoList[' + $id4 + '].sNSSAI.sNSSAI'`" />
+                                                            </execute>
+                                                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                                <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                                <parameter name="level" value="info" />
+                                                                <parameter name="field1" value="sNSSAI from RAN to check if already exists "/>
+                                                                <parameter name="field2" value="`$tmp.fromRAN.sNSSAI`"/>
+                                                            </record>
+                                                        </block>
+                                                    </for>
+                                                    <block atomic='true'>
+                                                        <switch test='`$prop.ransim-mounted`'>
+                                                            <outcome value='false'>
+                                                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                                    <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToNRCellCU`"/>
+                                                                    <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/>
+                                                                    <parameter name="target" value="{idNearRTRIC}"/>
+                                                                    <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
+                                                                </execute>
+                                                            </outcome>
+                                                            <outcome value='true'>
+                                                                <block atomic='true'>
+                                                                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                                        <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToNRCellCU.ransim-mounted`"/>
+                                                                        <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/>
+                                                                        <parameter name="target" value="{idNearRTRIC}"/>
+                                                                        <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
+                                                                    </execute>
+                                                                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                                        <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/>
+                                                                        <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/>
+                                                                        <parameter name="target" value="{mountName}"/>
+                                                                        <parameter name="replacement" value="`$tmp.gNBCUCPList.gNBCUName`"/>
+                                                                    </execute>
+                                                                </block>
+                                                            </outcome>
+                                                        </switch>
+                                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                            <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/>
+                                                            <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/>
+                                                            <parameter name="target" value="{idGNBCUCPFunction}"/>
+                                                            <parameter name="replacement" value="`$tmp.gNBCUCPList.gNBCUName`"/>
+                                                        </execute>
+                                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                            <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/>
+                                                            <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/>
+                                                            <parameter name="target" value="{idNRCellCU}"/>
+                                                            <parameter name="replacement" value="`$tmp.cellLocalId`"/>
+                                                        </execute>
+                                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                            <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/>
+                                                            <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/>
+                                                            <parameter name="target" value="{mcc}"/>
+                                                            <parameter name="replacement" value="`$tmp.mcc`"/>
+                                                        </execute>
+                                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                            <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/>
+                                                            <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellCU.url"/>
+                                                            <parameter name="target" value="{mnc}"/>
+                                                            <parameter name="replacement" value="`$tmp.mnc`"/>
+                                                        </execute>
+                                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                            <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                            <parameter name="level" value="info" />
+                                                            <parameter name="field1" value="Add PLMNInfoListEntry ToNRCellCU URL"/>
+                                                            <parameter name="field2" value="`$tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/>
+                                                        </record>
+                                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                            <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                            <parameter name="level" value="info" />
+                                                            <parameter name="field1" value="Setting variables for PLMNInfoList Entry Add to NRCellCU"/>
+                                                            <parameter name="field2" value="`$prop.controller.url + $tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/>
+                                                            <parameter name="field3" value="`$tmp.mcc`"/>
+                                                            <parameter name="field4" value="`$tmp.mnc`"/>
+                                                            <parameter name="field5" value="`$payloadJson.input.sliceProfile.sNSSAI`"/>
+                                                            <parameter name="field6" value="`$tmp.uLThptPerSlice`"/>
+                                                            <parameter name="field7" value="`$tmp.dLThptPerSlice`"/>
+                                                        </record>
+                                                        <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                                            <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-get-PLMNInfoListEntry-NRCellCU.json'`" />
+                                                            <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addPLMNInfoListEntry.ToNRCellCU.url`"/>
+                                                            <parameter name="restapiUser" value="`$prop.controller.user`" />
+                                                            <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
+                                                            <parameter name="httpMethod" value="PUT"/>
+                                                            <parameter name="responsePrefix" value="PLMNInfoListEntry-response"/>
+                                                            <parameter name='contentType' value='application/json' />
+                                                            <parameter name='format' value='json' />
+                                                            <outcome value='failure'>
+                                                                <block>
+                                                                    <return status='failure'>
+                                                                        <parameter name='ack-final' value='Y'/>
+                                                                        <parameter name="error-code" value="500" />
+                                                                        <parameter name="error-message" value="Error adding PLMNInfoList Entry to NRCellCU" />
+                                                                    </return>
+                                                                    <block atomic='true'>
+                                                                        <set>
+                                                                            <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
+                                                                            <parameter name="tmp.status" value="`$error-code`"/>
+                                                                            <parameter name="tmp.reason" value="`$error-message`"/>
+                                                                            <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
+                                                                            <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
+                                                                        </set>
+                                                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                                            <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
+                                                                            <parameter name="level" value="info" />
+                                                                            <parameter name="field1" value="URL for SO Callback Response"/>
+                                                                            <parameter name='field2' value="`$tmp.so.callbackURL`" />
+                                                                            <parameter name='field3' value="`$tmp.status`" />
+                                                                            <parameter name='field4' value="`$tmp.reason`" />
+                                                                            <parameter name='field5' value="`$tmp.requestID`" />
+                                                                            <parameter name='field6' value="`$tmp.action`" />
+                                                                            <parameter name='field7' value="`$tmp.CUCPList`" />
+                                                                            <parameter name='field8' value="`$tmp.CUUPList`" />
+                                                                            <parameter name='field9' value="`$tmp.DUList`" />
+                                                                        </record>
+                                                                        <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                                                            <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
+                                                                            <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
+                                                                            <parameter name="httpMethod" value="POST"/>
+                                                                            <parameter name="responsePrefix" value="so-callback-response"/>
+                                                                            <parameter name='contentType' value='application/json' />
+                                                                            <parameter name='format' value='json' />
+                                                                            <parameter name='accept' value='application/json' />
+                                                                            <outcome value='failure'>
+                                                                                <block>
+                                                                                    <return status='failure'>
+                                                                                        <parameter name='ack-final' value='Y'/>
+                                                                                        <parameter name="error-code" value="500" />
+                                                                                        <parameter name="error-message" value="Error sending SO Response" />
+                                                                                    </return>
+                                                                                </block>
+                                                                            </outcome>
+                                                                            <outcome value='success'>
+                                                                                <block>
+                                                                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                                                        <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                                                        <parameter name="level" value="info" />
+                                                                                        <parameter name="field1" value="SO Response Sent "/>
+                                                                                    </record>
+                                                                                </block>
+                                                                            </outcome>
+                                                                        </execute>
+                                                                    </block>
+                                                                </block>
+                                                            </outcome>
+                                                            <outcome value='success'>
+                                                                <block>
+                                                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                                        <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                                        <parameter name="level" value="info" />
+                                                                        <parameter name="field1" value="PLMNInfo List Entry Add to NRCELLCU Executed Successfully "/>
+                                                                    </record>
+                                                                </block>
+                                                            </outcome>
+                                                        </execute>
+                                                    </block>
+                                                    <block atomic='true'>
+                                                        <switch test='`$prop.ransim-mounted`'>
+                                                            <outcome value='false'>
+                                                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                                    <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToNRCellCU`"/>
+                                                                    <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/>
+                                                                    <parameter name="target" value="{idNearRTRIC}"/>
+                                                                    <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
+                                                                </execute>
+                                                            </outcome>
+                                                            <outcome value='true'>
+                                                                <block atomic='true'>
+                                                                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                                        <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToNRCellCU.ransim-mounted`"/>
+                                                                        <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/>
+                                                                        <parameter name="target" value="{idNearRTRIC}"/>
+                                                                        <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
+                                                                    </execute>
+                                                                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                                        <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellCU.url`"/>
+                                                                        <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/>
+                                                                        <parameter name="target" value="{mountName}"/>
+                                                                        <parameter name="replacement" value="`$tmp.gNBCUCPList.gNBCUName`"/>
+                                                                    </execute>
+                                                                </block>
+                                                            </outcome>
+                                                        </switch>
+                                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                            <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellCU.url`"/>
+                                                            <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/>
+                                                            <parameter name="target" value="{idGNBCUCPFunction}"/>
+                                                            <parameter name="replacement" value="`$tmp.gNBCUCPList.gNBCUName`"/>
+                                                        </execute>
+                                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                            <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellCU.url`"/>
+                                                            <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/>
+                                                            <parameter name="target" value="{idNRCellCU}"/>
+                                                            <parameter name="replacement" value="`$tmp.cellLocalId`"/>
+                                                        </execute>
+                                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                            <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellCU.url`"/>
+                                                            <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellCU.url"/>
+                                                            <parameter name="target" value="{id}"/>
+                                                            <parameter name="replacement" value="`$tmp.RRMPolicyRatioID.NRCellCU`"/>
+                                                        </execute>
+                                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                            <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                            <parameter name="level" value="info" />
+                                                            <parameter name="field1" value="addRRMPolicyRatio ToNRCellCU URL"/>
+                                                            <parameter name="field2" value="`$tmp.addRRMPolicyRatio.ToNRCellCU.url`"/>
+                                                        </record>
+                                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                            <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                            <parameter name="level" value="info" />
+                                                            <parameter name="field1" value="Setting variables for addRRMPolicyRatio to NRCellCU"/>
+                                                            <parameter name="field2" value="`$prop.controller.url + $tmp.addRRMPolicyRatio.ToNRCellCU.url`"/>
+                                                            <parameter name="field3" value="`$tmp.mcc`"/>
+                                                            <parameter name="field4" value="`$tmp.mnc`"/>
+                                                            <parameter name="field5" value="`$payloadJson.input.sliceProfile.sNSSAI`"/>
+                                                            <parameter name="field6" value="`$tmp.uLThptPerSlice`"/>
+                                                            <parameter name="field7" value="`$tmp.dLThptPerSlice`"/>
+                                                        </record>
+                                                        <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                                            <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-RRMPolicyRatio-NRCellCU.json'`" />
+                                                            <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addRRMPolicyRatio.ToNRCellCU.url`"/>
+                                                            <parameter name="restapiUser" value="`$prop.controller.user`" />
+                                                            <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
+                                                            <parameter name="httpMethod" value="PUT"/>
+                                                            <parameter name="responsePrefix" value="addRRMPolicyRatio-response"/>
+                                                            <parameter name='contentType' value='application/json' />
+                                                            <parameter name='format' value='json' />
+                                                            <outcome value='failure'>
+                                                                <block>
+                                                                    <return status='failure'>
+                                                                        <parameter name='ack-final' value='Y'/>
+                                                                        <parameter name="error-code" value="500" />
+                                                                        <parameter name="error-message" value="Error adding RRMPolicyr" />
+                                                                    </return>
+                                                                    <block atomic='true'>
+                                                                        <set>
+                                                                            <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
+                                                                            <parameter name="tmp.status" value="`$error-code`"/>
+                                                                            <parameter name="tmp.reason" value="`$error-message`"/>
+                                                                            <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
+                                                                            <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
+                                                                        </set>
+                                                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                                            <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
+                                                                            <parameter name="level" value="info" />
+                                                                            <parameter name="field1" value="URL for SO Callback Response"/>
+                                                                            <parameter name='field2' value="`$tmp.so.callbackURL`" />
+                                                                            <parameter name='field3' value="`$tmp.status`" />
+                                                                            <parameter name='field4' value="`$tmp.reason`" />
+                                                                            <parameter name='field5' value="`$tmp.requestID`" />
+                                                                            <parameter name='field6' value="`$tmp.action`" />
+                                                                            <parameter name='field7' value="`$tmp.CUCPList`" />
+                                                                            <parameter name='field8' value="`$tmp.CUUPList`" />
+                                                                            <parameter name='field9' value="`$tmp.DUList`" />
+                                                                        </record>
+                                                                        <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                                                            <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
+                                                                            <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
+                                                                            <parameter name="httpMethod" value="POST"/>
+                                                                            <parameter name="responsePrefix" value="so-callback-response"/>
+                                                                            <parameter name='contentType' value='application/json' />
+                                                                            <parameter name='format' value='json' />
+                                                                            <parameter name='accept' value='application/json' />
+                                                                            <outcome value='failure'>
+                                                                                <block>
+                                                                                    <return status='failure'>
+                                                                                        <parameter name='ack-final' value='Y'/>
+                                                                                        <parameter name="error-code" value="500" />
+                                                                                        <parameter name="error-message" value="Error sending SO Response" />
+                                                                                    </return>
+                                                                                </block>
+                                                                            </outcome>
+                                                                            <outcome value='success'>
+                                                                                <block>
+                                                                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                                                        <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                                                        <parameter name="level" value="info" />
+                                                                                        <parameter name="field1" value="SO Response Sent "/>
+                                                                                    </record>
+                                                                                </block>
+                                                                            </outcome>
+                                                                        </execute>
+                                                                    </block>
+                                                                </block>
+                                                            </outcome>
+                                                            <outcome value='success'>
+                                                                <block>
+                                                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                                        <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                                        <parameter name="level" value="info" />
+                                                                        <parameter name="field1" value="addRRMPolicyRatio to NRCELLCU Executed Successfully "/>
+                                                                    </record>
+                                                                </block>
+                                                            </outcome>
+                                                        </execute>
+                                                    </block>
+                                                    <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                                        <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updategNBCUCP`"/>
+                                                        <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updategNBCUCP.json'`" />
+                                                        <parameter name="httpMethod" value="PUT"/>
+                                                        <parameter name="responsePrefix" value="update-gNBCUCP-configdb-response"/>
+                                                        <parameter name='contentType' value='application/json' />
+                                                        <parameter name='format' value='json' />
+                                                        <parameter name='accept' value='application/json' />
+                                                        <parameter name="convertResponse" value="true"/>
+                                                        <outcome value='failure'>
+                                                            <block>
+                                                                <set>
+                                                                    <parameter name='error-code' value='500'/>
+                                                                    <parameter name='error-message' value='Error updating configCUCP info in ConfigDB. Aborting RPC executiopn'/>
+                                                                </set>
+                                                                <return status='failure'>
+                                                                    <parameter name='ack-final' value='Y'/>
+                                                                    <parameter name='error-code' value='500'/>
+                                                                    <parameter name='error-message' value='Error updating nearRTRIC info in ConfigDB. Aborting RPC executiopn'/>
+                                                                </return>
+                                                                <block atomic='true'>
+                                                                    <set>
+                                                                        <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
+                                                                        <parameter name="tmp.status" value="`$error-code`"/>
+                                                                        <parameter name="tmp.reason" value="`$error-message`"/>
+                                                                        <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
+                                                                        <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
+                                                                    </set>
+                                                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                                        <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
+                                                                        <parameter name="level" value="info" />
+                                                                        <parameter name="field1" value="URL for SO Callback Response"/>
+                                                                        <parameter name='field2' value="`$tmp.so.callbackURL`" />
+                                                                        <parameter name='field3' value="`$tmp.status`" />
+                                                                        <parameter name='field4' value="`$tmp.reason`" />
+                                                                        <parameter name='field5' value="`$tmp.requestID`" />
+                                                                        <parameter name='field6' value="`$tmp.action`" />
+                                                                        <parameter name='field7' value="`$tmp.CUCPList`" />
+                                                                        <parameter name='field8' value="`$tmp.CUUPList`" />
+                                                                        <parameter name='field9' value="`$tmp.DUList`" />
+                                                                    </record>
+                                                                    <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                                                        <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
+                                                                        <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
+                                                                        <parameter name="httpMethod" value="POST"/>
+                                                                        <parameter name="responsePrefix" value="so-callback-response"/>
+                                                                        <parameter name='contentType' value='application/json' />
+                                                                        <parameter name='format' value='json' />
+                                                                        <parameter name='accept' value='application/json' />
+                                                                        <outcome value='failure'>
+                                                                            <block>
+                                                                                <return status='failure'>
+                                                                                    <parameter name='ack-final' value='Y'/>
+                                                                                    <parameter name="error-code" value="500" />
+                                                                                    <parameter name="error-message" value="Error sending SO Response" />
+                                                                                </return>
+                                                                            </block>
+                                                                        </outcome>
+                                                                        <outcome value='success'>
+                                                                            <block>
+                                                                                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                                                    <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                                                    <parameter name="level" value="info" />
+                                                                                    <parameter name="field1" value="SO Response Sent "/>
+                                                                                </record>
+                                                                            </block>
+                                                                        </outcome>
+                                                                    </execute>
+                                                                </block>
+                                                            </block>
+                                                        </outcome>
+                                                        <outcome value='success'>
+                                                            <block>
+                                                                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                                    <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                                    <parameter name="level" value="info" />
+                                                                    <parameter name="field1" value="Successfully Updated gNBCUCP info in ConfigDB"/>
+                                                                </record>
+                                                            </block>
+                                                        </outcome>
+                                                    </execute>
+                                                </block>
+                                            </outcome>
+                                        </switch>
+                                    </block>
+                                </for>
+                            </for>
+                            <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updateRRMPolicy`"/>
+                                <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updateRRMPolicy-CUCP.json'`" />
+                                <parameter name="httpMethod" value="PUT"/>
+                                <parameter name="responsePrefix" value="update-gNBCUCP-rrmpolicy-configdb-response"/>
+                                <parameter name='contentType' value='application/json' />
+                                <parameter name='format' value='json' />
+                                <parameter name='accept' value='application/json' />
+                                <parameter name="convertResponse" value="true"/>
+                                <outcome value='failure'>
+                                    <block>
+                                        <block atomic='true'>
+                                            <set>
+                                                <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
+                                                <parameter name="tmp.status" value="`$error-code`"/>
+                                                <parameter name="tmp.reason" value="`$error-message`"/>
+                                                <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
+                                                <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
+                                            </set>
+                                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
+                                                <parameter name="level" value="info" />
+                                                <parameter name="field1" value="URL for SO Callback Response"/>
+                                                <parameter name='field2' value="`$tmp.so.callbackURL`" />
+                                                <parameter name='field3' value="`$tmp.status`" />
+                                                <parameter name='field4' value="`$tmp.reason`" />
+                                                <parameter name='field5' value="`$tmp.requestID`" />
+                                                <parameter name='field6' value="`$tmp.action`" />
+                                                <parameter name='field7' value="`$tmp.CUCPList`" />
+                                                <parameter name='field8' value="`$tmp.CUUPList`" />
+                                                <parameter name='field9' value="`$tmp.DUList`" />
+                                            </record>
+                                            <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                                <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
+                                                <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
+                                                <parameter name="httpMethod" value="POST"/>
+                                                <parameter name="responsePrefix" value="so-callback-response"/>
+                                                <parameter name='contentType' value='application/json' />
+                                                <parameter name='format' value='json' />
+                                                <parameter name='accept' value='application/json' />
+                                                <outcome value='failure'>
+                                                    <block>
+                                                        <return status='failure'>
+                                                            <parameter name='ack-final' value='Y'/>
+                                                            <parameter name="error-code" value="500" />
+                                                            <parameter name="error-message" value="Error sending SO Response" />
+                                                        </return>
+                                                    </block>
+                                                </outcome>
+                                                <outcome value='success'>
+                                                    <block>
+                                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                            <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                            <parameter name="level" value="info" />
+                                                            <parameter name="field1" value="SO Response Sent "/>
+                                                        </record>
+                                                    </block>
+                                                </outcome>
+                                            </execute>
+                                        </block>
+                                        <set>
+                                            <parameter name='error-code' value='500'/>
+                                            <parameter name='error-message' value='Error updating RRMPolicy CUCP info in ConfigDB. Aborting RPC executiopn'/>
+                                        </set>
+                                        <return status='failure'>
+                                            <parameter name='ack-final' value='Y'/>
+                                            <parameter name='error-code' value='500'/>
+                                            <parameter name='error-message' value='Error updating RRMPolicy CUCP info in ConfigDB. Aborting RPC executiopn'/>
+                                        </return>
+                                    </block>
+                                </outcome>
+                                <outcome value='success'>
+                                    <block>
+                                        <set>
+                                            <parameter name='prop.configDB.rrmPolicyID' value='`$prop.configDB.rrmPolicyID + 1`' />
+                                        </set>
+                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                            <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                            <parameter name="level" value="info" />
+                                            <parameter name="field1" value="Successfully Updated RRMPolicy CUCP info in ConfigDB"/>
+                                        </record>
+                                    </block>
+                                </outcome>
+                            </execute>
+                        </for>
+                    </block>
+                    <block atomic='true'>
+                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                            <parameter name='outputPath' value='tmp.CUUPListEntries' />
+                            <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList_length'`" />
+                        </execute>
+                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                            <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                            <parameter name="level" value="info" />
+                            <parameter name="field1" value="getListofCells-configdb-response. "/>
+                            <parameter name="field2" value="`$tmp.CUUPListEntries`"/>
+                        </record>
+                        <set>
+                            <parameter name='tmp.maxNumberOfConns' value='`$payloadJson.input.sliceProfile.maxNumberOfConns * 1.1`' />
+                            <parameter name='tmp.TotalNumberOfDRBForNSSAI' value='`$tmp.maxNumberOfConns * .6`' />
+                            <parameter name='tmp.DRBPerCUUPForSNSSAI' value='`$tmp.TotalNumberOfDRBForNSSAI / $tmp.CUUPListEntries`' />
+                        </set>
+                        <block atomic='true'>
+                            <set>
+                                <parameter name='tmp.rRMPolicyDedicatedRatio.CUUP1' value='`$tmp.DRBPerCUUPForSNSSAI * 100`' />
+                                <parameter name='tmp.rRMPolicyDedicatedRatio.CUUP' value='`$tmp.rRMPolicyDedicatedRatio.CUUP1 / $prop.cuupfunction.maxNumberOfDRBsPerCUUP`' />
+                            </set>
+                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                <parameter name="level" value="info" />
+                                <parameter name="field1" value="rRMPolicyDedicatedRatio for CUUP "/>
+                                <parameter name="field2" value="`$tmp.rRMPolicyDedicatedRatio.CUUP`"/>
+                            </record>
+                        </block>
+                        <for index='id2' start='0' end='`$tmp.CUUPListEntries `' >
+                            <block atomic='true'>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                    <parameter name='outputPath' value='tmp.gNBCUUPList.gNBCUUPId' />
+                                    <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList[' + $id2 + '].gNBCUUPId'`" />
+                                </execute>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                    <parameter name='outputPath' value='tmp.gNBCUUPList.gNBId' />
+                                    <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList[' + $id2 + '].gNBId'`" />
+                                </execute>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                    <parameter name='outputPath' value='tmp.gNBCUUPList.gNBIdLength' />
+                                    <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList[' + $id2 + '].gNBIdLength'`" />
+                                </execute>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                    <parameter name='outputPath' value='tmp.pLMNInfoListEntries' />
+                                    <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList[' + $id2 + '].pLMNInfoList_length'`" />
+                                </execute>
+                            </block>
+                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                <parameter name="level" value="info" />
+                                <parameter name="field1" value="CUCP Details "/>
+                                <parameter name="field2" value="`$tmp.gNBCUUPList.gNBCUUPId`"/>
+                                <parameter name="field3" value="`$tmp.gNBCUUPList.gNBId`"/>
+                                <parameter name="field4" value="`$tmp.gNBCUUPList.gNBIdLength`"/>
+                                <parameter name="field5" value="`$tmp.gNBCUUPList.pLMNInfoList_length`"/>
+                                <parameter name="field6" value="`$tmp.payload.pLMNId`"/>
+                            </record>
+                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                <parameter name="level" value="info" />
+                                <parameter name="field1" value="MCC "/>
+                                <parameter name="field2" value="`$tmp.mcc`"/>
+                                <parameter name="field3" value="MNC "/>
+                                <parameter name="field4" value="`$tmp.mnc`"/>
+                                <parameter name="field5" value="Calculated uLThptPerSlice "/>
+                                <parameter name="field6" value="`$tmp.uLThptPerSlice`"/>
+                                <parameter name="field7" value="Calculated dLThptPerSlice "/>
+                                <parameter name="field8" value="`$tmp.dLThptPerSlice`"/>
+                            </record>
+                            <for index='id4' start='0' end='`$tmp.pLMNInfoListEntries`' >
+                                <block atomic='true'>
+                                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                        <parameter name='outputPath' value='tmp.fromRAN.sNSSAI' />
+                                        <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBCUUPList[' + $id2 + '].pLMNInfoList[' + $id3 + '].sNSSAI'`" />
+                                    </execute>
+                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                        <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                        <parameter name="level" value="info" />
+                                        <parameter name="field1" value="sNSSAI from RAN to check if already exists "/>
+                                        <parameter name="field2" value="`$tmp.fromRAN.sNSSAI`"/>
+                                    </record>
+                                </block>
+                            </for>
+                            <block atomic='true'>
+                                <switch test='`$prop.ransim-mounted`'>
+                                    <outcome value='false'>
+                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                            <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToGNBCUUPFn`"/>
+                                            <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/>
+                                            <parameter name="target" value="{idNearRTRIC}"/>
+                                            <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
+                                        </execute>
+                                    </outcome>
+                                    <outcome value='true'>
+                                        <block atomic='true'>
+                                            <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToGNBCUUPFn.ransim-mounted`"/>
+                                                <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/>
+                                                <parameter name="target" value="{idNearRTRIC}"/>
+                                                <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
+                                            </execute>
+                                            <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/>
+                                                <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/>
+                                                <parameter name="target" value="{mountName}"/>
+                                                <parameter name="replacement" value="`$tmp.gNBCUUPList.gNBCUUPId`"/>
+                                            </execute>
+                                        </block>
+                                    </outcome>
+                                </switch>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                    <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/>
+                                    <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/>
+                                    <parameter name="target" value="{idGNBCUUPFunction}"/>
+                                    <parameter name="replacement" value="`$tmp.gNBCUUPList.gNBCUUPId`"/>
+                                </execute>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                    <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/>
+                                    <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/>
+                                    <parameter name="target" value="{mcc}"/>
+                                    <parameter name="replacement" value="`$tmp.mcc`"/>
+                                </execute>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                    <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/>
+                                    <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url"/>
+                                    <parameter name="target" value="{mnc}"/>
+                                    <parameter name="replacement" value="`$tmp.mnc`"/>
+                                </execute>
+                                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                    <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                    <parameter name="level" value="info" />
+                                    <parameter name="field1" value="Add PLMNInfoListEntry ToGNBCUUPFn URL"/>
+                                    <parameter name="field2" value="`$tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/>
+                                </record>
+                                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                    <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                    <parameter name="level" value="info" />
+                                    <parameter name="field1" value="Setting variables for PLMNInfoList Entry Add to NRCellCU"/>
+                                    <parameter name="field2" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/>
+                                    <parameter name="field3" value="`$tmp.mcc`"/>
+                                    <parameter name="field4" value="`$tmp.mnc`"/>
+                                    <parameter name="field5" value="`$payloadJson.input.sliceProfile.sNSSAI`"/>
+                                    <parameter name="field6" value="`$tmp.uLThptPerSlice`"/>
+                                    <parameter name="field7" value="`$tmp.dLThptPerSlice`"/>
+                                </record>
+                                <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                    <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-get-PLMNInfoListEntry-GNBCUUPFn.json'`" />
+                                    <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addPLMNInfoListEntry.ToGNBCUUPFn.url`"/>
+                                    <parameter name="restapiUser" value="`$prop.controller.user`" />
+                                    <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
+                                    <parameter name="httpMethod" value="PUT"/>
+                                    <parameter name="responsePrefix" value="PLMNInfoListEntry-response"/>
+                                    <parameter name='contentType' value='application/json' />
+                                    <parameter name='format' value='json' />
+                                    <outcome value='failure'>
+                                        <block>
+                                            <block atomic='true'>
+                                                <set>
+                                                    <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
+                                                    <parameter name="tmp.status" value="`$error-code`"/>
+                                                    <parameter name="tmp.reason" value="`$error-message`"/>
+                                                    <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
+                                                    <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
+                                                </set>
+                                                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                    <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
+                                                    <parameter name="level" value="info" />
+                                                    <parameter name="field1" value="URL for SO Callback Response"/>
+                                                    <parameter name='field2' value="`$tmp.so.callbackURL`" />
+                                                    <parameter name='field3' value="`$tmp.status`" />
+                                                    <parameter name='field4' value="`$tmp.reason`" />
+                                                    <parameter name='field5' value="`$tmp.requestID`" />
+                                                    <parameter name='field6' value="`$tmp.action`" />
+                                                    <parameter name='field7' value="`$tmp.CUCPList`" />
+                                                    <parameter name='field8' value="`$tmp.CUUPList`" />
+                                                    <parameter name='field9' value="`$tmp.DUList`" />
+                                                </record>
+                                                <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                                    <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
+                                                    <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
+                                                    <parameter name="httpMethod" value="POST"/>
+                                                    <parameter name="responsePrefix" value="so-callback-response"/>
+                                                    <parameter name='contentType' value='application/json' />
+                                                    <parameter name='format' value='json' />
+                                                    <parameter name='accept' value='application/json' />
+                                                    <outcome value='failure'>
+                                                        <block>
+                                                            <return status='failure'>
+                                                                <parameter name='ack-final' value='Y'/>
+                                                                <parameter name="error-code" value="500" />
+                                                                <parameter name="error-message" value="Error sending SO Response" />
+                                                            </return>
+                                                        </block>
+                                                    </outcome>
+                                                    <outcome value='success'>
+                                                        <block>
+                                                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                                <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                                <parameter name="level" value="info" />
+                                                                <parameter name="field1" value="SO Response Sent "/>
+                                                            </record>
+                                                        </block>
+                                                    </outcome>
+                                                </execute>
+                                            </block>
+                                            <return status='failure'>
+                                                <parameter name='ack-final' value='Y'/>
+                                                <parameter name="error-code" value="500" />
+                                                <parameter name="error-message" value="Error adding PLMNInfoList Entry to GNBCUUPFn" />
+                                            </return>
+                                        </block>
+                                    </outcome>
+                                    <outcome value='success'>
+                                        <block>
+                                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                <parameter name="level" value="info" />
+                                                <parameter name="field1" value="PLMNInfo List Entry Add Executed Successfully "/>
+                                            </record>
+                                        </block>
+                                    </outcome>
+                                </execute>
+                            </block>
+                            <block atomic='true'>
+                                <switch test='`$prop.ransim-mounted`'>
+                                    <outcome value='false'>
+                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                            <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToGNBCUUPFn`"/>
+                                            <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToGNBCUUPFn.url"/>
+                                            <parameter name="target" value="{idNearRTRIC}"/>
+                                            <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
+                                        </execute>
+                                    </outcome>
+                                    <outcome value='true'>
+                                        <block atomic='true'>
+                                            <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToGNBCUUPFn.ransim-mounted`"/>
+                                                <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToGNBCUUPFn.url"/>
+                                                <parameter name="target" value="{idNearRTRIC}"/>
+                                                <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
+                                            </execute>
+                                            <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/>
+                                                <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToGNBCUUPFn.url"/>
+                                                <parameter name="target" value="{mountName}"/>
+                                                <parameter name="replacement" value="`$tmp.gNBCUUPList.gNBCUUPId`"/>
+                                            </execute>
+                                        </block>
+                                    </outcome>
+                                </switch>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                    <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/>
+                                    <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToGNBCUUPFn.url"/>
+                                    <parameter name="target" value="{idGNBCUUPFunction}"/>
+                                    <parameter name="replacement" value="`$tmp.gNBCUUPList.gNBCUUPId`"/>
+                                </execute>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                    <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/>
+                                    <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToGNBCUUPFn.url"/>
+                                    <parameter name="target" value="{id}"/>
+                                    <parameter name="replacement" value="`$tmp.RRMPolicyRatioID.GNBCUUPFunction`"/>
+                                </execute>
+                                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                    <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                    <parameter name="level" value="info" />
+                                    <parameter name="field1" value="addRRMPolicyRatio ToGNBCUUPFn URL"/>
+                                    <parameter name="field2" value="`$tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/>
+                                </record>
+                                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                    <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                    <parameter name="level" value="info" />
+                                    <parameter name="field1" value="Setting variables for addRRMPolicyRatio to GNBCUUPFn"/>
+                                    <parameter name="field2" value="`$tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/>
+                                    <parameter name="field3" value="`$tmp.mcc`"/>
+                                    <parameter name="field4" value="`$tmp.mnc`"/>
+                                    <parameter name="field5" value="`$payloadJson.input.sliceProfile.sNSSAI`"/>
+                                    <parameter name="field6" value="`$tmp.uLThptPerSlice`"/>
+                                    <parameter name="field7" value="`$tmp.dLThptPerSlice`"/>
+                                </record>
+                                <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                    <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-RRMPolicyRatio-GNBCUUPFn.json'`" />
+                                    <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addRRMPolicyRatio.ToGNBCUUPFn.url`"/>
+                                    <parameter name="restapiUser" value="`$prop.controller.user`" />
+                                    <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
+                                    <parameter name="httpMethod" value="PUT"/>
+                                    <parameter name="responsePrefix" value="addRRMPolicyRatio-response"/>
+                                    <parameter name='contentType' value='application/json' />
+                                    <parameter name='format' value='json' />
+                                    <outcome value='failure'>
+                                        <block>
+                                            <block atomic='true'>
+                                                <set>
+                                                    <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
+                                                    <parameter name="tmp.status" value="`$error-code`"/>
+                                                    <parameter name="tmp.reason" value="`$error-message`"/>
+                                                    <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
+                                                    <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
+                                                </set>
+                                                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                    <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
+                                                    <parameter name="level" value="info" />
+                                                    <parameter name="field1" value="URL for SO Callback Response"/>
+                                                    <parameter name='field2' value="`$tmp.so.callbackURL`" />
+                                                    <parameter name='field3' value="`$tmp.status`" />
+                                                    <parameter name='field4' value="`$tmp.reason`" />
+                                                    <parameter name='field5' value="`$tmp.requestID`" />
+                                                    <parameter name='field6' value="`$tmp.action`" />
+                                                    <parameter name='field7' value="`$tmp.CUCPList`" />
+                                                    <parameter name='field8' value="`$tmp.CUUPList`" />
+                                                    <parameter name='field9' value="`$tmp.DUList`" />
+                                                </record>
+                                                <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                                    <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
+                                                    <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
+                                                    <parameter name="httpMethod" value="POST"/>
+                                                    <parameter name="responsePrefix" value="so-callback-response"/>
+                                                    <parameter name='contentType' value='application/json' />
+                                                    <parameter name='format' value='json' />
+                                                    <parameter name='accept' value='application/json' />
+                                                    <outcome value='failure'>
+                                                        <block>
+                                                            <return status='failure'>
+                                                                <parameter name='ack-final' value='Y'/>
+                                                                <parameter name="error-code" value="500" />
+                                                                <parameter name="error-message" value="Error sending SO Response" />
+                                                            </return>
+                                                        </block>
+                                                    </outcome>
+                                                    <outcome value='success'>
+                                                        <block>
+                                                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                                <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                                <parameter name="level" value="info" />
+                                                                <parameter name="field1" value="SO Response Sent "/>
+                                                            </record>
+                                                        </block>
+                                                    </outcome>
+                                                </execute>
+                                            </block>
+                                            <return status='failure'>
+                                                <parameter name='ack-final' value='Y'/>
+                                                <parameter name="error-code" value="500" />
+                                                <parameter name="error-message" value="Error adding RRMPolicy" />
+                                            </return>
+                                        </block>
+                                    </outcome>
+                                    <outcome value='success'>
+                                        <block>
+                                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                <parameter name="level" value="info" />
+                                                <parameter name="field1" value="addRRMPolicyRatio Executed Successfully "/>
+                                            </record>
+                                        </block>
+                                    </outcome>
+                                </execute>
+                            </block>
+                            <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updategNBCUUP`"/>
+                                <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updategNBCUUP.json'`" />
+                                <parameter name="httpMethod" value="PUT"/>
+                                <parameter name="responsePrefix" value="update-gNBCUUP-configdb-response"/>
+                                <parameter name='contentType' value='application/json' />
+                                <parameter name='format' value='json' />
+                                <parameter name='accept' value='application/json' />
+                                <parameter name="convertResponse" value="true"/>
+                                <outcome value='failure'>
+                                    <block>
+                                        <block atomic='true'>
+                                            <set>
+                                                <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
+                                                <parameter name="tmp.status" value="`$error-code`"/>
+                                                <parameter name="tmp.reason" value="`$error-message`"/>
+                                                <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
+                                                <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
+                                            </set>
+                                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
+                                                <parameter name="level" value="info" />
+                                                <parameter name="field1" value="URL for SO Callback Response"/>
+                                                <parameter name='field2' value="`$tmp.so.callbackURL`" />
+                                                <parameter name='field3' value="`$tmp.status`" />
+                                                <parameter name='field4' value="`$tmp.reason`" />
+                                                <parameter name='field5' value="`$tmp.requestID`" />
+                                                <parameter name='field6' value="`$tmp.action`" />
+                                                <parameter name='field7' value="`$tmp.CUCPList`" />
+                                                <parameter name='field8' value="`$tmp.CUUPList`" />
+                                                <parameter name='field9' value="`$tmp.DUList`" />
+                                            </record>
+                                            <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                                <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
+                                                <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
+                                                <parameter name="httpMethod" value="POST"/>
+                                                <parameter name="responsePrefix" value="so-callback-response"/>
+                                                <parameter name='contentType' value='application/json' />
+                                                <parameter name='format' value='json' />
+                                                <parameter name='accept' value='application/json' />
+                                                <outcome value='failure'>
+                                                    <block>
+                                                        <return status='failure'>
+                                                            <parameter name='ack-final' value='Y'/>
+                                                            <parameter name="error-code" value="500" />
+                                                            <parameter name="error-message" value="Error sending SO Response" />
+                                                        </return>
+                                                    </block>
+                                                </outcome>
+                                                <outcome value='success'>
+                                                    <block>
+                                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                            <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                            <parameter name="level" value="info" />
+                                                            <parameter name="field1" value="SO Response Sent "/>
+                                                        </record>
+                                                    </block>
+                                                </outcome>
+                                            </execute>
+                                        </block>
+                                        <set>
+                                            <parameter name='error-code' value='500'/>
+                                            <parameter name='error-message' value='Error updating configCUUP info in ConfigDB. Aborting RPC executiopn'/>
+                                        </set>
+                                        <return status='failure'>
+                                            <parameter name='ack-final' value='Y'/>
+                                            <parameter name='error-code' value='500'/>
+                                            <parameter name='error-message' value='Error updating CUUP info in ConfigDB. Aborting RPC executiopn'/>
+                                        </return>
+                                    </block>
+                                </outcome>
+                                <outcome value='success'>
+                                    <block>
+                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                            <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                            <parameter name="level" value="info" />
+                                            <parameter name="field1" value="Successfully Updated gNBCUUP info in ConfigDB"/>
+                                        </record>
+                                    </block>
+                                </outcome>
+                            </execute>
+                            <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updateRRMPolicy`"/>
+                                <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updateRRMPolicy-CUUP.json'`" />
+                                <parameter name="httpMethod" value="PUT"/>
+                                <parameter name="responsePrefix" value="update-gNBCUUP-rrmpolicy-configdb-response"/>
+                                <parameter name='contentType' value='application/json' />
+                                <parameter name='format' value='json' />
+                                <parameter name='accept' value='application/json' />
+                                <parameter name="convertResponse" value="true"/>
+                                <outcome value='failure'>
+                                    <block>
+                                        <block atomic='true'>
+                                            <set>
+                                                <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
+                                                <parameter name="tmp.status" value="`$error-code`"/>
+                                                <parameter name="tmp.reason" value="`$error-message`"/>
+                                                <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
+                                                <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
+                                            </set>
+                                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
+                                                <parameter name="level" value="info" />
+                                                <parameter name="field1" value="URL for SO Callback Response"/>
+                                                <parameter name='field2' value="`$tmp.so.callbackURL`" />
+                                                <parameter name='field3' value="`$tmp.status`" />
+                                                <parameter name='field4' value="`$tmp.reason`" />
+                                                <parameter name='field5' value="`$tmp.requestID`" />
+                                                <parameter name='field6' value="`$tmp.action`" />
+                                                <parameter name='field7' value="`$tmp.CUCPList`" />
+                                                <parameter name='field8' value="`$tmp.CUUPList`" />
+                                                <parameter name='field9' value="`$tmp.DUList`" />
+                                            </record>
+                                            <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                                <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
+                                                <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
+                                                <parameter name="httpMethod" value="POST"/>
+                                                <parameter name="responsePrefix" value="so-callback-response"/>
+                                                <parameter name='contentType' value='application/json' />
+                                                <parameter name='format' value='json' />
+                                                <parameter name='accept' value='application/json' />
+                                                <outcome value='failure'>
+                                                    <block>
+                                                        <return status='failure'>
+                                                            <parameter name='ack-final' value='Y'/>
+                                                            <parameter name="error-code" value="500" />
+                                                            <parameter name="error-message" value="Error sending SO Response" />
+                                                        </return>
+                                                    </block>
+                                                </outcome>
+                                                <outcome value='success'>
+                                                    <block>
+                                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                            <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                            <parameter name="level" value="info" />
+                                                            <parameter name="field1" value="SO Response Sent "/>
+                                                        </record>
+                                                    </block>
+                                                </outcome>
+                                            </execute>
+                                        </block>
+                                        <set>
+                                            <parameter name='error-code' value='500'/>
+                                            <parameter name='error-message' value='Error updating RRMPolicy CUUP info in ConfigDB. Aborting RPC executiopn'/>
+                                        </set>
+                                        <return status='failure'>
+                                            <parameter name='ack-final' value='Y'/>
+                                            <parameter name='error-code' value='500'/>
+                                            <parameter name='error-message' value='Error updating RRMPolicy CUUP info in ConfigDB. Aborting RPC executiopn'/>
+                                        </return>
+                                    </block>
+                                </outcome>
+                                <outcome value='success'>
+                                    <block>
+                                        <set>
+                                            <parameter name='prop.configDB.rrmPolicyID' value='`$prop.configDB.rrmPolicyID + 1`' />
+                                        </set>
+                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                            <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                            <parameter name="level" value="info" />
+                                            <parameter name="field1" value="Successfully Updated RRMPolicy CUUP info in ConfigDB"/>
+                                        </record>
+                                    </block>
+                                </outcome>
+                            </execute>
+                        </for>
+                    </block>
+                    <block atomic='true'>
+                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                            <parameter name='outputPath' value='tmp.DUListEntries' />
+                            <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList_length'`" />
+                        </execute>
+                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                            <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                            <parameter name="level" value="info" />
+                            <parameter name="field1" value="Number of DU List Entries "/>
+                            <parameter name="field2" value="`$tmp.DUListEntries`"/>
+                        </record>
+                        <set>
+                            <parameter name='tmp.uLThptPerSlice' value='`$payloadJson.input.sliceProfile.uLThptPerSlice * 1.1`' />
+                            <parameter name='tmp.dLThptPerSlice' value='`$payloadJson.input.sliceProfile.dLThptPerSlice * 1.1`' />
+                            <parameter name='tmp.maxNumberOfConns' value='`$payloadJson.input.sliceProfile.maxNumberOfConns * 1.1`' />
+                            <parameter name='tmp.nearRTRIC.trafficCapacity1' value='`$tmp.uLThptPerSlice + $tmp.dLThptPerSlice`' />
+                            <parameter name='tmp.nearRTRIC.trafficCapacity' value='`$tmp.nearRTRIC.trafficCapacity1 / 2`' />
+                            <parameter name='tmp.nearRTRIC.trafficCapacityBPS' value='`$tmp.nearRTRIC.trafficCapacity * 1000000`' />
+                            <parameter name='tmp.nrcelldu.totalPRBForSNSSAI' value='`$tmp.nearRTRIC.trafficCapacityBPS / 1008000`' />
+                        </set>
+                        <block atomic='true'>
+                            <set>
+                                <parameter name='tmp.nrcelldu.PRBPerImpactedCell' value='`$tmp.nrcelldu.totalPRBForSNSSAI / $tmp.DUListEntries`' />
+                                <parameter name='tmp.rRMPolicyDedicatedRatio.CellDU1' value='`$tmp.nrcelldu.PRBPerImpactedCell * 100`' />
+                                <parameter name='tmp.rRMPolicyDedicatedRatio.CellDU' value='`$tmp.rRMPolicyDedicatedRatio.CellDU1 / $prop.nrcelldu.TotalPRBsPerCell`' />
+                            </set>
+                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                <parameter name="level" value="info" />
+                                <parameter name="field1" value="rRMPolicyDedicatedRatio for CellDU "/>
+                                <parameter name="field2" value="`$tmp.rRMPolicyDedicatedRatio.CellDU`"/>
+                            </record>
+                        </block>
+                        <for index='id2' start='0' end='`$tmp.DUListEntries`' >
+                            <block atomic='true'>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                    <parameter name='outputPath' value='tmp.cellDUListEntries' />
+                                    <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].cellDUList_length'`" />
+                                </execute>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                    <parameter name='outputPath' value='tmp.gNBDUList.gNBDUId' />
+                                    <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].gNBDUId'`" />
+                                </execute>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                    <parameter name='outputPath' value='tmp.gNBDUName' />
+                                    <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].gNBDUName'`" />
+                                </execute>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                    <parameter name='outputPath' value='tmp.gNBId' />
+                                    <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].gNBId'`" />
+                                </execute>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                    <parameter name='outputPath' value='tmp.gNBIdLength' />
+                                    <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].gNBIdLength'`" />
+                                </execute>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                    <parameter name='outputPath' value='tmp.nFType' />
+                                    <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].nFType'`" />
+                                </execute>
+                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                    <parameter name='outputPath' value='tmp.pLMNId' />
+                                    <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].pLMNId'`" />
+                                </execute>
+                            </block>
+                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                <parameter name="level" value="info" />
+                                <parameter name="field1" value="Numberof cellDU of Entries "/>
+                                <parameter name="field2" value="`$tmp.cellDUListEntries`"/>
+                                <parameter name="field3" value="`$tmp.gNBDUList.gNBDUId`"/>
+                                <parameter name="field4" value="`$tmp.gNBDUName`"/>
+                                <parameter name="field5" value="`$tmp.gNBId`"/>
+                                <parameter name="field6" value="`$tmp.gNBIdLength`"/>
+                                <parameter name="field7" value="`$tmp.nFType`"/>
+                                <parameter name="field8" value="`$tmp.pLMNId`"/>
+                            </record>
+                            <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updategNBDU`"/>
+                                <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updategNBDU.json'`" />
+                                <parameter name="httpMethod" value="PUT"/>
+                                <parameter name="responsePrefix" value="update-gNBDU-configdb-response"/>
+                                <parameter name='contentType' value='application/json' />
+                                <parameter name='format' value='json' />
+                                <parameter name='accept' value='application/json' />
+                                <parameter name="convertResponse" value="true"/>
+                                <outcome value='success'>
+                                    <block>
+                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                            <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                            <parameter name="level" value="info" />
+                                            <parameter name="field1" value="Successfully Updated gNBCUUP info in ConfigDB"/>
+                                        </record>
+                                    </block>
+                                </outcome>
+                                <outcome value='failure'>
+                                    <block>
+                                        <set>
+                                            <parameter name='error-code' value='500'/>
+                                            <parameter name='error-message' value='Error updating configCUUP info in ConfigDB. Aborting RPC executiopn'/>
+                                        </set>
+                                        <return status='failure'>
+                                            <parameter name='ack-final' value='Y'/>
+                                            <parameter name='error-code' value='500'/>
+                                            <parameter name='error-message' value='Error updating CUUP info in ConfigDB. Aborting RPC executiopn'/>
+                                        </return>
+                                        <block atomic='true'>
+                                            <set>
+                                                <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
+                                                <parameter name="tmp.status" value="`$error-code`"/>
+                                                <parameter name="tmp.reason" value="`$error-message`"/>
+                                                <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
+                                                <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
+                                            </set>
+                                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
+                                                <parameter name="level" value="info" />
+                                                <parameter name="field1" value="URL for SO Callback Response"/>
+                                                <parameter name='field2' value="`$tmp.so.callbackURL`" />
+                                                <parameter name='field3' value="`$tmp.status`" />
+                                                <parameter name='field4' value="`$tmp.reason`" />
+                                                <parameter name='field5' value="`$tmp.requestID`" />
+                                                <parameter name='field6' value="`$tmp.action`" />
+                                                <parameter name='field7' value="`$tmp.CUCPList`" />
+                                                <parameter name='field8' value="`$tmp.CUUPList`" />
+                                                <parameter name='field9' value="`$tmp.DUList`" />
+                                            </record>
+                                            <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                                <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
+                                                <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
+                                                <parameter name="httpMethod" value="POST"/>
+                                                <parameter name="responsePrefix" value="so-callback-response"/>
+                                                <parameter name='contentType' value='application/json' />
+                                                <parameter name='format' value='json' />
+                                                <parameter name='accept' value='application/json' />
+                                                <outcome value='failure'>
+                                                    <block>
+                                                        <return status='failure'>
+                                                            <parameter name='ack-final' value='Y'/>
+                                                            <parameter name="error-code" value="500" />
+                                                            <parameter name="error-message" value="Error sending SO Response" />
+                                                        </return>
+                                                    </block>
+                                                </outcome>
+                                                <outcome value='success'>
+                                                    <block>
+                                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                            <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                            <parameter name="level" value="info" />
+                                                            <parameter name="field1" value="SO Response Sent "/>
+                                                        </record>
+                                                    </block>
+                                                </outcome>
+                                            </execute>
+                                        </block>
+                                    </block>
+                                </outcome>
+                            </execute>
+                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                <parameter name="level" value="info" />
+                                <parameter name="field1" value="MCC "/>
+                                <parameter name="field2" value="`$tmp.mcc`"/>
+                                <parameter name="field3" value="MNC "/>
+                                <parameter name="field4" value="`$tmp.mnc`"/>
+                                <parameter name="field5" value="Calculated uLThptPerSlice "/>
+                                <parameter name="field6" value="`$tmp.uLThptPerSlice`"/>
+                                <parameter name="field7" value="Calculated dLThptPerSlice "/>
+                                <parameter name="field8" value="`$tmp.dLThptPerSlice`"/>
+                            </record>
+                            <for index='id3' start='0' end='`$getListofCells-configdb-response._length `' >
+                                <block atomic='true'>
+                                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                        <parameter name='outputPath' value='tmp.pLMNInfoListEntries' />
+                                        <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].cellDUList[' + $id3 + '].pLMNInfoList_length'`" />
+                                    </execute>
+                                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                        <parameter name='outputPath' value='tmp.cellLocalId' />
+                                        <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].cellDUList[' + $id3 + '].cellLocalId'`" />
+                                    </execute>
+                                </block>
+                                <for index='idCell' start='0' end='`$tmp.cellDUListEntries`' >
+                                    <block atomic='true'>
+                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                            <parameter name='outputPath' value='tmp.gNBDUList.cellLocalId' />
+                                            <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].cellDUList[' + $idCell + '].cellLocalId'`" />
+                                        </execute>
+                                        <switch test="`$tmp.gNBDUList.cellLocalId == $tmp.cellLocalId`">
+                                            <outcome value='true'>
+                                                <block atomic='true'>
+                                                    <block atomic='true'>
+                                                        <switch test='`$prop.ransim-mounted`'>
+                                                            <outcome value='false'>
+                                                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                                    <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToNRCellDU`"/>
+                                                                    <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/>
+                                                                    <parameter name="target" value="{idNearRTRIC}"/>
+                                                                    <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
+                                                                </execute>
+                                                            </outcome>
+                                                            <outcome value='true'>
+                                                                <block atomic='true'>
+                                                                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                                        <parameter name="source" value="`$prop.restapi.addPLMNInfoListEntry.ToNRCellDU.ransim-mounted`"/>
+                                                                        <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/>
+                                                                        <parameter name="target" value="{idNearRTRIC}"/>
+                                                                        <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
+                                                                    </execute>
+                                                                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                                        <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/>
+                                                                        <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/>
+                                                                        <parameter name="target" value="{mountName}"/>
+                                                                        <parameter name="replacement" value="`$tmp.gNBDUList.gNBDUId`"/>
+                                                                    </execute>
+                                                                </block>
+                                                            </outcome>
+                                                        </switch>
+                                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                            <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/>
+                                                            <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/>
+                                                            <parameter name="target" value="{idGNBDUFunction}"/>
+                                                            <parameter name="replacement" value="`$tmp.gNBDUList.gNBDUId`"/>
+                                                        </execute>
+                                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                            <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/>
+                                                            <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/>
+                                                            <parameter name="target" value="{idNRCellDU}"/>
+                                                            <parameter name="replacement" value="`$tmp.cellLocalId`"/>
+                                                        </execute>
+                                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                            <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/>
+                                                            <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/>
+                                                            <parameter name="target" value="{mcc}"/>
+                                                            <parameter name="replacement" value="`$tmp.mcc`"/>
+                                                        </execute>
+                                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                            <parameter name="source" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/>
+                                                            <parameter name="outputPath" value="tmp.addPLMNInfoListEntry.ToNRCellDU.url"/>
+                                                            <parameter name="target" value="{mnc}"/>
+                                                            <parameter name="replacement" value="`$tmp.mnc`"/>
+                                                        </execute>
+                                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                            <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                            <parameter name="level" value="info" />
+                                                            <parameter name="field1" value="Add PLMNInfoListEntry ToNRCellDU URL"/>
+                                                            <parameter name="field2" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/>
+                                                        </record>
+                                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                            <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                            <parameter name="level" value="info" />
+                                                            <parameter name="field1" value="Setting variables for PLMNInfoList Entry Add to NRCellDU"/>
+                                                            <parameter name="field2" value="`$tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/>
+                                                            <parameter name="field3" value="`$tmp.mcc`"/>
+                                                            <parameter name="field4" value="`$tmp.mnc`"/>
+                                                            <parameter name="field5" value="`$payloadJson.input.sliceProfile.sNSSAI`"/>
+                                                            <parameter name="field6" value="`$tmp.uLThptPerSlice`"/>
+                                                            <parameter name="field7" value="`$tmp.dLThptPerSlice`"/>
+                                                        </record>
+                                                        <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                                            <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-get-PLMNInfoListEntry-NRCellDU.json'`" />
+                                                            <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addPLMNInfoListEntry.ToNRCellDU.url`"/>
+                                                            <parameter name="restapiUser" value="`$prop.controller.user`" />
+                                                            <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
+                                                            <parameter name="httpMethod" value="PUT"/>
+                                                            <parameter name="responsePrefix" value="PLMNInfoListEntry-response"/>
+                                                            <parameter name='contentType' value='application/json' />
+                                                            <parameter name='format' value='json' />
+                                                            <outcome value='failure'>
+                                                                <block>
+                                                                    <block atomic='true'>
+                                                                        <set>
+                                                                            <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
+                                                                            <parameter name="tmp.status" value="`$error-code`"/>
+                                                                            <parameter name="tmp.reason" value="`$error-message`"/>
+                                                                            <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
+                                                                            <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
+                                                                        </set>
+                                                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                                            <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
+                                                                            <parameter name="level" value="info" />
+                                                                            <parameter name="field1" value="URL for SO Callback Response"/>
+                                                                            <parameter name='field2' value="`$tmp.so.callbackURL`" />
+                                                                            <parameter name='field3' value="`$tmp.status`" />
+                                                                            <parameter name='field4' value="`$tmp.reason`" />
+                                                                            <parameter name='field5' value="`$tmp.requestID`" />
+                                                                            <parameter name='field6' value="`$tmp.action`" />
+                                                                            <parameter name='field7' value="`$tmp.CUCPList`" />
+                                                                            <parameter name='field8' value="`$tmp.CUUPList`" />
+                                                                            <parameter name='field9' value="`$tmp.DUList`" />
+                                                                        </record>
+                                                                        <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                                                            <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
+                                                                            <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
+                                                                            <parameter name="httpMethod" value="POST"/>
+                                                                            <parameter name="responsePrefix" value="so-callback-response"/>
+                                                                            <parameter name='contentType' value='application/json' />
+                                                                            <parameter name='format' value='json' />
+                                                                            <parameter name='accept' value='application/json' />
+                                                                            <outcome value='failure'>
+                                                                                <block>
+                                                                                    <return status='failure'>
+                                                                                        <parameter name='ack-final' value='Y'/>
+                                                                                        <parameter name="error-code" value="500" />
+                                                                                        <parameter name="error-message" value="Error sending SO Response" />
+                                                                                    </return>
+                                                                                </block>
+                                                                            </outcome>
+                                                                            <outcome value='success'>
+                                                                                <block>
+                                                                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                                                        <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                                                        <parameter name="level" value="info" />
+                                                                                        <parameter name="field1" value="SO Response Sent "/>
+                                                                                    </record>
+                                                                                </block>
+                                                                            </outcome>
+                                                                        </execute>
+                                                                    </block>
+                                                                    <return status='failure'>
+                                                                        <parameter name='ack-final' value='Y'/>
+                                                                        <parameter name="error-code" value="500" />
+                                                                        <parameter name="error-message" value="Error adding PLMNInfo List Entry to NRCellCUr" />
+                                                                    </return>
+                                                                </block>
+                                                            </outcome>
+                                                            <outcome value='success'>
+                                                                <block>
+                                                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                                        <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                                        <parameter name="level" value="info" />
+                                                                        <parameter name="field1" value="PLMNInfo List Entry Add to NRCELLDU Executed Successfully "/>
+                                                                    </record>
+                                                                </block>
+                                                            </outcome>
+                                                        </execute>
+                                                    </block>
+                                                    <block atomic='true'>
+                                                        <switch test='`$prop.ransim-mounted`'>
+                                                            <outcome value='false'>
+                                                                <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                                    <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToNRCellDU`"/>
+                                                                    <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/>
+                                                                    <parameter name="target" value="{idNearRTRIC}"/>
+                                                                    <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
+                                                                </execute>
+                                                            </outcome>
+                                                            <outcome value='true'>
+                                                                <block atomic='true'>
+                                                                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                                        <parameter name="source" value="`$prop.restapi.addRRMPolicyRatio.ToNRCellDU.ransim-mounted`"/>
+                                                                        <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/>
+                                                                        <parameter name="target" value="{idNearRTRIC}"/>
+                                                                        <parameter name="replacement" value="`$tmp.nearRTRICId`"/>
+                                                                    </execute>
+                                                                    <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                                        <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/>
+                                                                        <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/>
+                                                                        <parameter name="target" value="{mountName}"/>
+                                                                        <parameter name="replacement" value="`$tmp.gNBDUList.gNBDUId`"/>
+                                                                    </execute>
+                                                                </block>
+                                                            </outcome>
+                                                        </switch>
+                                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                            <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/>
+                                                            <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/>
+                                                            <parameter name="target" value="{idGNBDUFunction}"/>
+                                                            <parameter name="replacement" value="`$tmp.gNBDUList.gNBDUId`"/>
+                                                        </execute>
+                                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                            <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/>
+                                                            <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/>
+                                                            <parameter name="target" value="{idNRCellDU}"/>
+                                                            <parameter name="replacement" value="`$tmp.cellLocalId`"/>
+                                                        </execute>
+                                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliStringUtils' method='replace' >
+                                                            <parameter name="source" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/>
+                                                            <parameter name="outputPath" value="tmp.addRRMPolicyRatio.ToNRCellDU.url"/>
+                                                            <parameter name="target" value="{id}"/>
+                                                            <parameter name="replacement" value="`$tmp.RRMPolicyRatioID.NRCellDU`"/>
+                                                        </execute>
+                                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                            <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                            <parameter name="level" value="info" />
+                                                            <parameter name="field1" value="addRRMPolicyRatio ToNRCellDU URL"/>
+                                                            <parameter name="field2" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/>
+                                                        </record>
+                                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                            <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                            <parameter name="level" value="info" />
+                                                            <parameter name="field1" value="Setting variables for addRRMPolicyRatio to NRCellDU"/>
+                                                            <parameter name="field2" value="`$tmp.addRRMPolicyRatio.ToNRCellDU.url`"/>
+                                                            <parameter name="field3" value="`$tmp.mcc`"/>
+                                                            <parameter name="field4" value="`$tmp.mnc`"/>
+                                                            <parameter name="field5" value="`$payloadJson.input.sliceProfile.sNSSAI`"/>
+                                                            <parameter name="field6" value="`$tmp.uLThptPerSlice`"/>
+                                                            <parameter name="field7" value="`$tmp.dLThptPerSlice`"/>
+                                                        </record>
+                                                        <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                                            <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-add-RRMPolicyRatio-NRCellDU.json'`" />
+                                                            <parameter name="restapiUrl" value="`$prop.controller.url + $tmp.addRRMPolicyRatio.ToNRCellDU.url`"/>
+                                                            <parameter name="restapiUser" value="`$prop.controller.user`" />
+                                                            <parameter name="restapiPassword" value="`$prop.controller.pwd`"/>
+                                                            <parameter name="httpMethod" value="PUT"/>
+                                                            <parameter name="responsePrefix" value="addRRMPolicyRatio-response"/>
+                                                            <parameter name='contentType' value='application/json' />
+                                                            <parameter name='format' value='json' />
+                                                            <outcome value='failure'>
+                                                                <block>
+                                                                    <block atomic='true'>
+                                                                        <set>
+                                                                            <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
+                                                                            <parameter name="tmp.status" value="`$error-code`"/>
+                                                                            <parameter name="tmp.reason" value="`$error-message`"/>
+                                                                            <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
+                                                                            <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
+                                                                        </set>
+                                                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                                            <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
+                                                                            <parameter name="level" value="info" />
+                                                                            <parameter name="field1" value="URL for SO Callback Response"/>
+                                                                            <parameter name='field2' value="`$tmp.so.callbackURL`" />
+                                                                            <parameter name='field3' value="`$tmp.status`" />
+                                                                            <parameter name='field4' value="`$tmp.reason`" />
+                                                                            <parameter name='field5' value="`$tmp.requestID`" />
+                                                                            <parameter name='field6' value="`$tmp.action`" />
+                                                                            <parameter name='field7' value="`$tmp.CUCPList`" />
+                                                                            <parameter name='field8' value="`$tmp.CUUPList`" />
+                                                                            <parameter name='field9' value="`$tmp.DUList`" />
+                                                                        </record>
+                                                                        <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                                                            <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
+                                                                            <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
+                                                                            <parameter name="httpMethod" value="POST"/>
+                                                                            <parameter name="responsePrefix" value="so-callback-response"/>
+                                                                            <parameter name='contentType' value='application/json' />
+                                                                            <parameter name='format' value='json' />
+                                                                            <parameter name='accept' value='application/json' />
+                                                                            <outcome value='failure'>
+                                                                                <block>
+                                                                                    <return status='failure'>
+                                                                                        <parameter name='ack-final' value='Y'/>
+                                                                                        <parameter name="error-code" value="500" />
+                                                                                        <parameter name="error-message" value="Error sending SO Response" />
+                                                                                    </return>
+                                                                                </block>
+                                                                            </outcome>
+                                                                            <outcome value='success'>
+                                                                                <block>
+                                                                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                                                        <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                                                        <parameter name="level" value="info" />
+                                                                                        <parameter name="field1" value="SO Response Sent "/>
+                                                                                    </record>
+                                                                                </block>
+                                                                            </outcome>
+                                                                        </execute>
+                                                                    </block>
+                                                                    <return status='failure'>
+                                                                        <parameter name='ack-final' value='Y'/>
+                                                                        <parameter name="error-code" value="500" />
+                                                                        <parameter name="error-message" value="Error adding RRM Policy" />
+                                                                    </return>
+                                                                </block>
+                                                            </outcome>
+                                                            <outcome value='success'>
+                                                                <block>
+                                                                    <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                                        <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                                        <parameter name="level" value="info" />
+                                                                        <parameter name="field1" value="addRRMPolicyRatio to NRCELLDU Executed Successfully "/>
+                                                                    </record>
+                                                                </block>
+                                                            </outcome>
+                                                        </execute>
+                                                    </block>
+                                                </block>
+                                            </outcome>
+                                        </switch>
+                                    </block>
+                                </for>
+                                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                    <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                    <parameter name="level" value="info" />
+                                    <parameter name="field1" value="Numberof pLMNInfoList Entries "/>
+                                    <parameter name="field2" value="`$tmp.pLMNInfoListEntries`"/>
+                                    <parameter name="field3" value="cellLocalId "/>
+                                    <parameter name="field4" value="`$tmp.cellLocalId`"/>
+                                </record>
+                                <for index='id4' start='0' end='`$tmp.pLMNInfoListEntries`' >
+                                    <block atomic='true'>
+                                        <execute plugin='org.onap.ccsdk.sli.core.slipluginutils.SliPluginUtils' method='getAttributeValue'>
+                                            <parameter name='outputPath' value='tmp.fromRAN.sNSSAI' />
+                                            <parameter name='source' value="`'getRIC-configdb-response.[' + $id1 + '].gNBDUList[' + $id2 + '].cellDUList[' + $id3 + '].pLMNInfoList[' + $id4 + '].sNSSAI.sNSSAI'`" />
+                                        </execute>
+                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                            <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                            <parameter name="level" value="info" />
+                                            <parameter name="field1" value="sNSSAI from RAN to check if already exists "/>
+                                            <parameter name="field2" value="`$tmp.fromRAN.sNSSAI`"/>
+                                        </record>
+                                    </block>
+                                </for>
+                            </for>
+                            <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                <parameter name="restapiUrl" value="`$prop.configdb.url + $prop.restapi.configdb.updateRRMPolicy`"/>
+                                <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-configDB-updateRRMPolicy-DU.json'`" />
+                                <parameter name="httpMethod" value="PUT"/>
+                                <parameter name="responsePrefix" value="update-DU-rrmpolicy-configdb-response"/>
+                                <parameter name='contentType' value='application/json' />
+                                <parameter name='format' value='json' />
+                                <parameter name='accept' value='application/json' />
+                                <parameter name="convertResponse" value="true"/>
+                                <outcome value='success'>
+                                    <block>
+                                        <set>
+                                            <parameter name='prop.configDB.rrmPolicyID' value='`$prop.configDB.rrmPolicyID + 1`' />
+                                        </set>
+                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                            <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                            <parameter name="level" value="info" />
+                                            <parameter name="field1" value="Successfully Updated RRMPolicy DU info in ConfigDB"/>
+                                        </record>
+                                    </block>
+                                </outcome>
+                                <outcome value='failure'>
+                                    <block>
+                                        <set>
+                                            <parameter name='error-code' value='500'/>
+                                            <parameter name='error-message' value='Error updating RRMPolicy DU info in ConfigDB. Aborting RPC executiopn'/>
+                                        </set>
+                                        <return status='failure'>
+                                            <parameter name='ack-final' value='Y'/>
+                                            <parameter name='error-code' value='500'/>
+                                            <parameter name='error-message' value='Error updating RRMPolicy DU info in ConfigDB. Aborting RPC executiopn'/>
+                                        </return>
+                                        <block atomic='true'>
+                                            <set>
+                                                <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
+                                                <parameter name="tmp.status" value="`$error-code`"/>
+                                                <parameter name="tmp.reason" value="`$error-message`"/>
+                                                <parameter name="tmp.requestID" value="`$instantiateRANSlice-input.common-header.request-id`"/>
+                                                <parameter name="tmp.action" value="`$instantiateRANSlice-input.action`"/>
+                                            </set>
+                                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
+                                                <parameter name="level" value="info" />
+                                                <parameter name="field1" value="URL for SO Callback Response"/>
+                                                <parameter name='field2' value="`$tmp.so.callbackURL`" />
+                                                <parameter name='field3' value="`$tmp.status`" />
+                                                <parameter name='field4' value="`$tmp.reason`" />
+                                                <parameter name='field5' value="`$tmp.requestID`" />
+                                                <parameter name='field6' value="`$tmp.action`" />
+                                                <parameter name='field7' value="`$tmp.CUCPList`" />
+                                                <parameter name='field8' value="`$tmp.CUUPList`" />
+                                                <parameter name='field9' value="`$tmp.DUList`" />
+                                            </record>
+                                            <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                                                <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
+                                                <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
+                                                <parameter name="httpMethod" value="POST"/>
+                                                <parameter name="responsePrefix" value="so-callback-response"/>
+                                                <parameter name='contentType' value='application/json' />
+                                                <parameter name='format' value='json' />
+                                                <parameter name='accept' value='application/json' />
+                                                <outcome value='failure'>
+                                                    <block>
+                                                        <return status='failure'>
+                                                            <parameter name='ack-final' value='Y'/>
+                                                            <parameter name="error-code" value="500" />
+                                                            <parameter name="error-message" value="Error sending SO Response" />
+                                                        </return>
+                                                    </block>
+                                                </outcome>
+                                                <outcome value='success'>
+                                                    <block>
+                                                        <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                                            <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                                            <parameter name="level" value="info" />
+                                                            <parameter name="field1" value="SO Response Sent "/>
+                                                        </record>
+                                                    </block>
+                                                </outcome>
+                                            </execute>
+                                        </block>
+                                    </block>
+                                </outcome>
+                            </execute>
+                        </for>
+                    </block>
+                </for>
+            </block>
+            <block atomic='true'>
+                <set>
+                    <parameter name="tmp.so.callbackURL" value="`$payloadJson.input.callbackURL`"/>
+                    <parameter name="tmp.status" value="`$error-code`"/>
+                    <parameter name="tmp.reason" value="`$error-message`"/>
+                    <parameter name="tmp.requestID" value="`$instantiate-r-a-n-slice-input.common-header.request-id `"/>
+                    <parameter name="tmp.action" value="`$instantiate-r-a-n-slice-input.action`"/>
+                </set>
+                <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                    <parameter name="file" value="/opt/opendaylight/current/data/log/so-callback-response.log" />
+                    <parameter name="level" value="info" />
+                    <parameter name="field1" value="URL for SO Callback Response"/>
+                    <parameter name='field2' value="`$tmp.so.callbackURL`" />
+                    <parameter name='field3' value="`$tmp.status`" />
+                    <parameter name='field4' value="`$tmp.reason`" />
+                    <parameter name='field5' value="`$tmp.requestID`" />
+                    <parameter name='field6' value="`$tmp.action`" />
+                    <parameter name='field7' value="`$tmp.CUCPList`" />
+                    <parameter name='field8' value="`$tmp.CUUPList`" />
+                    <parameter name='field9' value="`$tmp.DUList`" />
+                </record>
+                <execute plugin='org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode' method='sendRequest' >
+                    <parameter name="templateFileName" value="`$prop.restapi.templateDir + '/ranSlice-so-response.json'`" />
+                    <parameter name="restapiUrl" value="`$tmp.so.callbackURL`"/>
+                    <parameter name="httpMethod" value="POST"/>
+                    <parameter name="responsePrefix" value="so-callback-response"/>
+                    <parameter name='contentType' value='application/json' />
+                    <parameter name='format' value='json' />
+                    <parameter name='accept' value='application/json' />
+                    <outcome value='failure'>
+                        <block>
+                            <set>
+                                <parameter name='error-code' value='500'/>
+                                <parameter name='error-message' value='Error sending SO response. Aborting RPC executiopn'/>
+                            </set>
+                            <return status='failure'>
+                                <parameter name='ack-final' value='Y'/>
+                                <parameter name="error-code" value="500" />
+                                <parameter name="error-message" value="Error sending SO Response" />
+                            </return>
+                        </block>
+                    </outcome>
+                    <outcome value='success'>
+                        <block>
+                            <record plugin="org.onap.ccsdk.sli.core.sli.recording.FileRecorder">
+                                <parameter name="file" value="/opt/opendaylight/current/data/log/instantiateRANSlice.log" />
+                                <parameter name="level" value="info" />
+                                <parameter name="field1" value="SO Response Sent "/>
+                            </record>
+                        </block>
+                    </outcome>
+                </execute>
+            </block>
+            <return status='success'>
+                <parameter name="ack-final" value="N" />
+                <parameter name="error-code" value="200" />
+                <parameter name="error-message" value="SUCCESSFUL Execution" />
+            </return>
+        </block>
+    </method>
+</service-logic>